binary-tree

    -1热度

    1回答

    TreeInterface.h #ifndef TreeInterface_h #define TreeInterface_h #include"PreconditionException.h" #include"NotFoundException.h" //#include"Tree.hpp" template<class ItemType> class TreeInterface

    1热度

    1回答

    有人可以教我如何使用Prorder和Inorder数组恢复二叉树。我已经看到了一些例子(JavaScript中没有),它们是有道理的,但是当我尝试写入时递归调用从不返回完整的树。也很想看到解释。下面是一些代码来开始: 创建树节点使用此: function Tree(x) { this.value = x; this.left = null; this.right =

    -3热度

    1回答

    可能的二叉树和二叉树搜索具有以下3个节点A,B,C的树。 它是正确的吗?

    0热度

    2回答

    我正在尝试查找二叉树中每个级别的平均值。我在做BFS。我正在尝试使用空节点来完成它。每当我找到一个虚拟节点时,这意味着我处于该级别的最后一个节点。我面临的问题是,我无法使用此功能在树中添加最后一级的平均值。有人能帮我吗? 考虑范例[3,9,20,15,7] 我得到的输出为[3.00000,14.50000]。没有得到最后一级是15和7 的平均这里是我的代码 /** * Definition fo

    0热度

    1回答

    即时通讯工作的项目和我的项目我必须建立一棵树。树将有大约64000叶子。不幸的是我一直运行到一个stackoverflow错误,我不知道该怎么做。我写错了递归方法吗?还是有错误的解决方法? 代码在构造: for(int i = 0; i < wordHolder.size(); i++) { add(i); } 添加方法: public void add(int i)

    0热度

    2回答

    这里是递归的代码,用于在特定深度“d”和行节点的值为“v”的二叉树中添加一行,但是如果我更改“深度”的后增量, (我标记了代码)预增量,代码不适用于所有测试案例...有人可以解释吗?谢谢 public class Solution { int value=0; public TreeNode addOneRow(TreeNode root, int v, int d) { valu

    0热度

    1回答

    我已经预先写好的代码: int maxExtract(node **tree) { node *prev = NULL; node *curr = *tree; int ret; if(curr == NULL) { printf("Tree is empty!\n"); exit(-1); } wh

    0热度

    1回答

    在我的节目,我有被定义二叉树如下: struct node { char value; struct node *left, *right; }; 在我的计划,我试图写在索引顺序返回每个节点值的字符串的函数(上下,从右到左遍历)。 在试图这样做,我写了下面的功能: char *to_string_util(struct node *root, char *str) {

    0热度

    1回答

    我似乎无法找到区别;我知道一个使用队列,另一个使用堆栈,但是如何影响RunTime?

    0热度

    2回答

    有谁能解释计算机是如何得到walkTree(tree['right'])的吗?我相信该函数会自动调用自己,直到None,然后递归地弹出所有“左”堆栈并打印它们,但是当函数调用walkTree(tree['right'])时,计算机在再次通过walkTree(tree['left'])时做了什么? def walkTree(tree): if tree == None: ret