binary-tree 相关问题

一种树数据结构,其中每个节点最多有两个子节点。

为什么在此树遍历中仅进行log(N)个递归调用?

以下代码是解决此问题的方法:“给出一棵二叉树,设计一种算法,该算法创建每个深度的所有节点的链表(例如,如果您的树的深度为D,则将。 。

回答 1 投票 1

表示C中二叉树的递归函数

问题,我想按顺序打印二叉树的节点,并希望打印出的节点的破折号与它们所处的高度一样多,然后再将其作为数据。我完成的研究发现...

回答 1 投票 2

使用PHP获取第n个深度的二叉树元素计数

我有一个代表二进制结构的用户表。例如,用户具有left_id和right_id,它们可以是二进制文件的左右节点(left_id和right_id是...的外部键...

回答 1 投票 1

B树节点内的嵌套平衡树?

B树的一个公认的好处是分支度可以很高,这在限制到达节点所需的磁盘访问次数方面很有用。但是,假设我们有(k,2k)B -...

回答 2 投票 1

查找到二叉树中最大的叶子节点的路径

我在解决该问题上已经花费了相当长的时间-这个问题希望我从路径创建一个Python列表,该列表将导致我到达二进制文件中最大的叶子节点(无子节点)...

回答 1 投票 0

二叉树到堆树的转换-陷入无限循环中

在解决问题时,我尝试了以下解决方案。不知何故,我的输出陷入了无限循环,无法打印结果或更新的堆树。给定一棵树,其中的左和右...

回答 1 投票 0

了解并处理coq中的嵌套归纳定义

我正在尝试证明insert_SearchTree,这是一个有关在插入关系后保留二进制搜索树的定理,如下。我不确定如何使用依赖...

回答 1 投票 1

如何使这种方法在BST中找到后继者?

我用Java为BST中给定节点的后继者编写了一个方法,但是它不起作用public Node successor(Node selectedNode){Node current = root; while(current.element!= selectedNode ....

回答 1 投票 0

逻辑上的'双重释放或损坏(fasttop)'错误

我正在执行一些Binary Search Tree作业,并且出现了这个“双重释放或损坏(快速运行)”错误。 ***`./bin/Main'中的错误:双重释放或损坏(快速更新):0x0000000000c25c20 *** ======= ...

回答 2 投票 0

此功能代表什么数据结构?

我具有以下功能,但我不确定他们是否要实现二叉树,即B树。这是代码:def foo(x):如果x:a,b,c = x返回foo(a)+ b + foo(c)...

回答 1 投票 -1

为什么只有四个树遍历算法?

Web上有很多内容,指出有四种树遍历算法:深度优先搜索-InOrder(左-右-根)PreOrder(左-右-根)PostOrder(左-右-根)宽度.. 。

回答 2 投票 0

需要帮助从二叉树中构造带有括号的字符串

我正在尝试解决以下算法问题:您需要使用预遍历方法从二叉树构造一个由括号和整数组成的字符串。空节点需要...

回答 2 投票 1

为什么只有四个树遍历算法?那其他组合呢?

网络上有很多内容说明有4种树遍历算法。 DFS-InOrder(lRr),PreOrder(Rlr),PostOrder(lrR)BFS-级别订单遍历1)这些树遍历是...

回答 1 投票 0

向BST有序遍历插入数组

我想使用有序遍历遍历给定的树。将排序后的数组插入BST(保持相同的形状)中,这是我的工作:public static BinTreeNode ...

回答 2 投票 0

高度为h的节点数是多少?

有人可以解释用于查找高度为h的节点数的方程n /(2 ^(h + 1))吗?对于3节点树:4 h = 1 2 3 h = 0,其中h = 0是2个节点,等式给出3 /(2 ^(0 + 1))= 3/2 ^ 1 = ...

回答 2 投票 1

对BST :: BST()'的未定义引用]

我收到这些错误C:\ Users \ SDRav \ AppData \ Local \ Temp \ ccCy0RiX.o:driver.cpp :(。text + 0x1b):对BST的未定义引用 ] >> [[ #include <iostream> #include "BSTNode.h" using namespace std; #ifndef BINARY #define BINARY template <typename DataType> class BST { public: BST(); // ~BST(); bool empty() const; /*------------------------------------------------------------------------ Check if BST is empty. Precondition: None. Postcondition: Returns true if BST is empty and false otherwise. -----------------------------------------------------------------------*/ void insert(const DataType & item); void traversePreorder(BSTNode<DataType> * startPoint); bool search(const DataType & item)const; bool deleteNode(const DataType & item); int leafCount(BSTNode<DataType> * startPoint); DataType getSiblings(const DataType & item); private: BSTNode<DataType> * treeRoot; typedef BSTNode<DataType> * BSTNodePointer; void search2(const DataType & item, bool & found, BSTNodePointer & locptr, BSTNodePointer & parent) const; };

回答 1 投票 0

改善数据结构-工具栈

我需要通过具有以下方法的数据结构来实现Stack:push(s)-将s推入数据结构-O(1)pop()-删除并返回最后插入的元素O(1)middle() -return ...

回答 1 投票 0

计算二叉树O(logn)^ 2中的节点数

我有一个问题,我需要以O((log(n))^ 2)的时间复杂度来查找完整树中的节点数。 (n的对数)^ 2,我的目的是找到h,它是h = log n(树的高度,...

回答 1 投票 0

二叉树实现:insert_tree()有问题

我做完C ++之后就开始学习一点点C了,所以我正在使用bintree实现。代码:struct Node {int value = -1; struct Node * left = NULL; struct Node * right = NULL; }; ...

回答 2 投票 1

查找二叉树(Java)的两片叶子之间的最大路径和]]

我正在努力解决以下问题:“给出一个二叉树,其中每个节点元素都包含一个数字。找到从一个叶节点到另一个叶节点的最大可能和。最大和路径可以或...]]

回答 2 投票 -4

© www.soinside.com 2019 - 2024. All rights reserved.