【问题标题】:How to write a method taking argument BinaryTree<float> that uses preorder traversal to calculate X?如何编写一个采用参数 BinaryTree<float> 的方法,该方法使用前序遍历来计算 X?
【发布时间】:2017-04-24 09:54:04
【问题描述】:

我这辈子都想不通,真的有人可以帮助我,这是为了即将到来的 Java 考试的复习目的:

• 以下接口指定二叉树类型。

interface BinaryTree 
{ 
   boolean isEmpty(); 
   T rootValue(); 
   BinaryTree leftChild(); 
   BinaryTree rightChild(); 
} 

编写一个方法,接受 BinaryTree 类型的参数 [修改不同的参数类型,字符等...(字符和浮点是主要的,如果有时间就休息)] 并使用 [revise in-order and reorder] 前序遍历计算参数中指定的树中所有数字的总和,并将该总和作为浮点类型的值返回。

提前致谢

【问题讨论】:

  • 我是一个糟糕的编码员,所以本质上只是把参数当作一个浮点数,但我认为奥斯瓦尔德的回答很棒
  • 是的,但说实话,在你展示你的尝试之前,他可能不应该写它。 SO 不是(或至少不应该是)你可以让其他人为你做功课的地方。不过你很幸运:D

标签: java data-structures binary-tree traversal tree-traversal


【解决方案1】:

试试这个 preOrder 遍历来计算 float 的总和

float add(final BinaryTree node) {
if (node == null) {
   return 0;
}

return (float)node.rootValue()+ add(node.leftChild()) + add(node.rightChild());
}

【讨论】:

    猜你喜欢
    • 2013-07-29
    • 2012-07-14
    • 2021-09-08
    • 1970-01-01
    • 2011-05-23
    • 2017-12-07
    • 2020-03-07
    • 1970-01-01
    • 2020-10-22
    相关资源
    最近更新 更多