腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
视频
沙龙
3
回答
有人能解释一下我关于二叉树的作业吗?我觉得很奇怪
、
我有一个任务要构建二叉树,具体如下: 构建理想的平衡树。从指定的树到二叉树查找节点数量。 所以..。奇怪的是:无论我在哪里读到二叉树,它们都不包含有重复值的节点,但在第二个任务中,我必须找到大量的节点,这些节点的数学运算要输入值……如果我按规则建树,不是只有0或1吗? 或者,也许,我建造的第一棵树必须是无序的,并且允许有重复的树?如果我重建树为二叉树搜索树,我只需要删除重复和排序节点的左-无右-多规则?
浏览 4
提问于2012-05-22
得票数 0
回答已采纳
1
回答
在二叉树中,兄弟节点是否一定是有序的?
、
、
刚刚在学校里学到了二叉树,二叉树的两个规则是 每个节点最多有2个子节点。 为每个节点的子节点(有序对)定义了线性排序。 现在,所有类型的二叉树(完整的,完整的等等)是二叉树,所以它们必须满足这两个条件。 但是,我在GeeksForGeeks上看到了这个例子: “线性排序”,有序对是怎么定义的? 对于图片中的同级节点来说,有些左边的比右边的大,有些右的比左边的大。 如果被要求检查给定的树是否为二叉树,如何确保第二个属性必须对每个节点的子节点进行排序? 谢谢
浏览 3
提问于2020-10-24
得票数 0
14
回答
二叉树与二叉树的区别
、
、
、
有谁能用一个例子来解释二叉树和二叉树搜索树的区别吗?
浏览 24
提问于2011-06-17
得票数 363
回答已采纳
2
回答
具有负值的二叉树
我正在解决一个数据结构问题,我遇到了一个二叉树问题: 查找二叉树中的最大节点,返回该节点。给定以下BST 1 / \ -5 2 / \ / \ 0 3 -4 -5 我认为在二叉树中,每个节点的键大于其左子树中的所有键,小于其右子树中的所有键。 二叉树可以不排序吗?
浏览 2
提问于2017-07-05
得票数 0
2
回答
二叉树到二叉树(BST)
、
、
、
如何将二叉树转换为O(1)额外空间的二叉树?
浏览 1
提问于2010-05-17
得票数 2
2
回答
我们应该用数组来表示二叉树吗,反之亦然?
、
我目前的理解是,数组(一维)可以用来表示左平衡二叉树。换句话说,从节点在二叉树图中的排列方式来看,我们可以填充数组的位置。 不过,这是否正确呢?相反,我们应该使用二叉树图来表示数组中的元素吗?在这种情况下,我们使用数组中的元素创建二叉树图,并使用公式l= 2n +1和r= 2n +2(其中n=父节点的数组索引、l=左子节点的数组索引和右子节点的数组索引)知道如何确定特定父节点的子节点的数组索引。 那么,使用数组来表示二叉树图,还是使用二叉树图来表示数组,哪个是正确的呢?或者这两种方式都是正确的?
浏览 5
提问于2015-08-25
得票数 2
3
回答
关于插入到空的二进制搜索树的测试问题
我在解释一个关于向二叉树中插入元素的问题时遇到了困难。我熟悉前置、后置和顺序遍历,但我不熟悉以下问题: 假设我们按照这个顺序将元素3、5、6、1、2、4、7插入到一个初始空的二进制搜索树中。 如果只给我一组按这个顺序插入的数字,我怎么才能把它变成二叉树呢?3是根源吗?我能自己把其他数字平衡到正确的子树上吗?在这种情况下不会有很多解释吗?是否有某种惯例被遵循? 谢谢。
浏览 3
提问于2011-06-26
得票数 5
回答已采纳
1
回答
在平衡二叉树中搜索项
、
、
如果我有一个平衡的二叉树,并且我想在其中搜索一个项,那么大的--哦,时间复杂度会是O(n)吗?在二叉树中搜索某一项,无论它是否平衡,都会从O(n)中改变大的我知道,如果我们有一个平衡的BST,那么搜索一个项就等于BST的高度,所以O(log ),但是普通的二叉树呢?
浏览 1
提问于2017-03-30
得票数 0
回答已采纳
2
回答
将空二叉树填充为不改变结构的二叉树(节点链接)
、
我今天有个面试,有人要求我给这个..。您已经创建了一个无序二叉树,没有任何节点中的数据。我们有一个具有相同数量的元素的数组。我们必须在二叉树中插入数据作为二叉树搜索树,而不改变二叉树的结构。 我想出的方法是对数组进行排序,然后逐个遍历它的元素,将每个数据元素放在树中的第一个空无序节点中。但我想这是不正确的,因为我没有被选中。 如果不允许问算法问题,很抱歉。如果有这样的问题,我会把这个拿下来.
浏览 6
提问于2016-06-13
得票数 5
回答已采纳
3
回答
红黑树需要两次遍历吗?
、
、
正如我们所知道的,为了得到精确的二叉树,我们至少需要两次遍历(按序和按序/按序和后序)才能恢复原始的二叉树。但是,如果树是红黑树,那么是否必须有两次遍历(按序和前序/按序和后序)才能获得原始树?谢谢。
浏览 0
提问于2013-07-14
得票数 1
回答已采纳
1
回答
连接二叉树
、
假设我们有一组二叉树,给出了它们的顺序遍历和预遍历,其中没有树是给定集合中另一棵树的子树。现在又给出了另一个二叉树Q。 确定它是否可以通过从给定集合中加入二叉树来形成(而将集合中的每一棵树连接起来最多应该考虑一次)。在这种情况下,连接操作意味着:选择集合中任何一棵树的根,并将其挂钩到另一棵树的任何顶点,这样生成的树也是一棵二叉树。 我们能用LCA (最不常见的祖先)来做这件事吗?还是需要特殊的数据结构来解决?
浏览 0
提问于2016-04-15
得票数 1
1
回答
二叉树什么时候比B树好?
、
、
当将二叉树或B树存储在辅助存储设备(如磁盘或磁带)上时,二叉树是否比B树有优势? 在一个作业中,我被问到“B-树什么时候比二叉树有优势?” 我想出的是B树更好,因为它需要较少的磁盘访问频率(每个节点访问读取更多的数据),并跳转到较少的节点以到达最终节点。但是问题的用词方式,它意味着二叉树确实比B树更有优势。那么,当二叉树存储在二次存储中时,是否存在比B树更好(更有效)的点?
浏览 0
提问于2013-10-07
得票数 3
回答已采纳
2
回答
在二叉树中按字母顺序排列字符串
、
、
我正在构建一个由样本段落中的单词组成的二叉树,按字母顺序排序。到目前为止,我已经实现了所有基本的“幕后”工作来定义二叉树(构造函数、方法),现在我正在向树中添加元素(单词)。 每个单词都删除了非字母数字字符,单词中的每个字母都转换为小写。我想知道如何按字母顺序将单词输入到树中?我对二叉树所做的一切都与数字有关,所以我不确定在这种情况下该怎么做。(我在想一些与ASCII值有关的事情?)
浏览 0
提问于2012-04-09
得票数 0
回答已采纳
2
回答
为什么二叉树比已排序的值数组更可取?
、
、
、
为什么二叉树比已排序的值数组更可取? 在任何一种情况下,找到给定的键值(通过遍历二叉树,或者通过在排序的数组上执行二进制搜索)都需要O(log )的时间复杂度。
浏览 1
提问于2015-03-10
得票数 1
1
回答
堆二进制树必须完成才能成为堆吗?
、
我对c++中的堆有一点困惑,我想更好地理解它。 一个二叉树必须是完整的(完整的二叉树)才能被归类为堆? 堆必须是一个完整的二叉树吗?教授的回答是否定的,但我还没有和教授核实过。 在线资源状态堆的定义是它们必须是完全二叉树。我的教授指出,堆是具有两个特殊属性的二叉树。
浏览 1
提问于2018-05-20
得票数 1
11
回答
如何将二叉树就地转换为二叉树,即不能使用任何额外的空间
、
、
、
、
如何将二叉树就地转换为二叉树,即我们不能使用任何额外的空间。
浏览 0
提问于2010-04-05
得票数 13
回答已采纳
2
回答
树映射如何使用红黑树算法
、
我读过许多关于红黑树的文章,其中O(log )运算所用的时间不太清楚,.I不清楚它是如何工作的,以及树映射是如何使用红黑树算法来平衡树的,而不是二叉树搜索树。 参考链接 有谁能用一个例子解释一下这个算法是如何工作的吗?
浏览 9
提问于2015-08-03
得票数 8
回答已采纳
1
回答
在保护树结构的同时用给定数组改变二叉树的元素
、
、
、
、
在java中,我有一个二叉树。我想从给定数组中的元素中更改它的元素。但我必须保护这个结构。在此之后,我应该将其转换为二进制搜索树。 如何在不破坏结构的情况下,用给定数组中的元素更改二叉树的元素? 我的意思是在下面的图片里。
浏览 2
提问于2022-05-15
得票数 0
1
回答
C++如何在不使用额外空间的情况下将二叉树转换为二叉树
、
、
这个C++赋值要求我们创建一个二叉树,并检查它是否是一个二叉树。如果不是,那么我们需要一个算法来修复它,而不使用额外的空间或其他数据结构。我和我的朋友都被困在找出一个合适的算法上,因为大量的在线搜索几乎没有得到任何结果。我们不太关心运行时,我们主要专注于找出如何根据给定的需求来修复BT。 链表被用来创建树,但我们在如何实现某种算法将其转换为BST上遇到了困难。 任何建议都将不胜感激!
浏览 0
提问于2015-12-10
得票数 1
1
回答
在几乎完全和完全二叉树中搜索元素的复杂度
在几乎完全的二叉树和倾斜的二叉树中插入、查找元素的时间复杂度是多少?
浏览 1
提问于2010-12-28
得票数 0
4
回答
二叉树结构的真实示例
谁能告诉我一些二叉树结构的真实例子?
浏览 0
提问于2011-01-05
得票数 0
4
回答
转换二叉树-> BST (保持原始树形)
、
、
、
我有一个二叉树的,某种形状的。我想把它转换成相同形状的的BST搜索树。有可能吗? 我试过这样的方法- 按顺序遍历二叉树&将内容放入数组中。然后将其映射到BST中,同时考虑到条件(左val、<=根、<=、右val)。这在某些情况下可行,但对另一些情况则不适用。 P.S.:我看过这个- 。但是比较BST在形状上的相似性是很容易的。
浏览 3
提问于2010-08-20
得票数 2
回答已采纳
1
回答
使用空树合并AVL树(C++模板)
、
、
、
、
作为我正在研究的AVL模板的一部分(C++模板),我试图合并2棵O( n1+n2 )复杂度的AVL树,而n1+n2是这两棵树的全部元素。 我想到了下一个算法。 在第一棵树上构建数组/列表-O(N1)-O(N1)顺序遍历,并构建数组/列表-O(N2)对这两个数组进行合并排序,并构建大小为n1+n2 -O( n1+n2 )的最终排序数组/列表,在该几乎完全的二叉树上构建一个空的几乎完整的二叉树,同时在合并的数组/列表中用elemets更新顶点。<code>G 211</代码> 我的问题是如何使用顶点实际构建n1+n2空的几乎完全的二叉树
浏览 4
提问于2011-04-17
得票数 2
回答已采纳
1
回答
重新排序树本身内的二进制搜索树
、
如果给我一个无序的二叉树,那么在不创建一个新树的情况下,怎样才能对它进行排序呢?当我说有序时,我的意思是左子树中的所有节点都小于根节点,而右子树中的所有节点都大于根节点。 我明白,将一个未排序的二叉树变成一个二叉树的最佳方法是提取所有的节点,然后将它们插入到一个新的树中,但是是否有另一种方法可以通过算法来切换原始树中节点的位置呢?
浏览 6
提问于2022-09-09
得票数 0
3
回答
字典实现(平衡二进制搜索树v.s. .哈希表)
、
、
在什么情况下使用平衡的二叉树而不是哈希表来实现字典ADT? 我的假设是,使用二进制搜索树总是更好,因为它的自然排序。 但是,对于二叉树,哈希表的搜索时间可以与O(1)、V.S.O(Logn)一样好。 所以我不确定割礼会是什么。
浏览 5
提问于2011-04-15
得票数 1
5
回答
如何合并两个二叉树
、
、
、
我有两个二叉树,我想合并它们。我的第一个问题是,我们是否可以合并两个二叉树,如果可以,我可以如何有效地执行合并操作,以及我可以执行合并操作的各种方式。..?
浏览 0
提问于2011-08-23
得票数 7
回答已采纳
3
回答
排序列表以简化二叉树的构建
、
、
、
、
我有一组用于平衡二叉树的项目。每一项的形式都是(data,parent),data是有用的信息,parent是二叉树中父节点的索引。 树中的节点从左到右逐行编号,如下所示: 1 ___/ \___ / \ 2 3 _/\_ _/\_ 4 5 6 7 这些元素存储在一个链表中。我应该如何对这个列表进行排序,以使我更容易构建树?每个父节点将被两个子节点引用(通过索引);如果我按父索引对这些节点进行排序,则排序必须是稳定的。
浏览 3
提问于2012-04-30
得票数 1
回答已采纳
2
回答
TreeSet如何维护add的O(logN)?
、
、
、
Java类可以维持add方法的O(logN)开销。如果数据是按排序顺序输入的,这是如何工作的? 既然二叉树的add方法在给定排序数据时会退化到O(N),为什么TreeSet不会发生这种情况呢?
浏览 6
提问于2019-11-14
得票数 0
1
回答
如何列出由加泰罗尼亚关系排序的所有二叉树
、
、
、
、
我正在寻找一个算法,在Lisp或伪代码中,列出由加泰罗尼亚关系排序的所有二叉树。 例如,我希望输入的'(a b c d)得到以下结果:(a (b (c d))) (a ((b c) d)) ((a b) (c d)) ((a (b c)) d) (((a b) c) d) 提前感谢您的帮助。
浏览 4
提问于2015-08-07
得票数 1
回答已采纳
1
回答
建立适当的树
、
、
、
、
所以,我有一个Huffman树,用于编码字符串。我已经定义了函数plant,但我不确定我的树是否只向一侧倾斜了太多。这是我的代码: data HuffTree = Leaf Char | HuffTree |*| HuffTree deriving (Eq, Show) |*|是一个infix。 plant :: [(Char,Int)] -> HuffTree plant [(x,y)] = (Leaf x) plant ((x,y):xs) = plant xs |*| (Leaf x) 对我来说,它看起来是片面的,因此它并不意味着编码思想,因为它
浏览 3
提问于2015-07-05
得票数 0
回答已采纳
3
回答
二叉树元素的递归打印
、
、
我回到K&R是为了读一章,并注意到一个我之前省略的例子。本章涵盖了二叉树数据类型的主题。我理解在节点中存储新条目,但是打印函数让我感到困惑。为什么要先打印左边的部分? 如果printf是函数中的第一个命令,然后是left和right,那么它会起作用吗? 如果不是,为什么呢? /* treeprint: in-order print of tree p */ void treeprint(struct tnode *p) { if (p != NULL) { treeprint(p->left); printf("%4d %s\n
浏览 0
提问于2012-09-18
得票数 4
回答已采纳
5
回答
构建一个二叉树,以便后序遍历应该给出排序的结果
、
、
、
我知道在二叉树上的顺序遍历(访问左边,访问根,访问右边)会给我一个排序的结果。但我需要在二叉树上执行Post-order遍历(向左访问,向右访问,访问根目录),结果应该会给出排序后的值。 为了实现这一点,我应该如何构建我的二叉树呢?
浏览 1
提问于2010-02-07
得票数 8
回答已采纳
3
回答
给定邮政订单的二叉树的构造
、
、
、
如果只有给定的信息是后序遍历,如何构造二叉树。在谷歌了主题之后,我明白在这种情况下,不可能有唯一的构造二叉树。但是如果给定整数,那么基于小于或大于then属性创建BT就变得很容易了。但是如果我们有字母表,那么我不能计算出我们在什么基础上成为父节点的左节点或右节点。这是我想要解决的问题。 Q)二叉树的后序遍历是DEBFCA .Find出前序遍历吗? 选项: (A) ABFCDE (B) ADBFEC (C) ABDECF (0) ABDCEF 正确答案是:c 有没有人能解释一下我们该如何回答。 我发现这个答案非常有用,但是第三步,我不明白事情是怎么发生的。耽误您时间,实在对不起
浏览 0
提问于2017-02-01
得票数 0
2
回答
最坏情况下最小排序时间复杂度定理
、
、
我正在研究排序算法,并且我坚持这个定理,证明了在n个向量上的排序算法至少在最坏的情况下具有时间复杂性。 N*log2 2(N)+(1/2)*log2 2(N)- log2(e)*n + O(1) 你的证明使用一个引理,说明一棵有k叶的二叉树至少有一个最高的高度(log2(N))。这个定理说你可以用n建立一个二叉树!叶和使用斯特林公式得到的结果!它应该是分类算法领域中的一个经典定理。 我的问题是我搞不懂这是怎么回事!叶二叉树建成了!例如,如果我们希望按递增顺序对向量v=(4,3,1)进行排序,那么如何构建具有3!=6叶的决策树? 我为可能的错误和没有正确地使用数学公式道歉。 提前感谢大家!
浏览 4
提问于2018-06-20
得票数 0
回答已采纳
1
回答
我对二叉树有点迷惑。
、
在二叉树中遍历时,我们先向左移动,然后向右移动,这是一种惯例吗?为什么我们不能从右边移到左边?
浏览 12
提问于2020-09-13
得票数 2
2
回答
部分有序树与二叉树相同吗?
、
、
我有点搞不懂部分有序的树木是如何工作的。它们和二叉树是一样的吗?另外,它的最佳用途是什么? 例如,如果我将5,6,4,9,3,1,7插入到一个空树中,我会得到: 5 / \ 4 6 / \ 3 9 / / 1 7
浏览 8
提问于2015-08-06
得票数 1
回答已采纳
2
回答
如何使用从C++中的向量读取的值来初始化二叉树?
、
我正在尝试对用C++实现的二叉树运行一些测试。我使用了一个结构来创建树节点: struct TreeNode { int val; TreeNode* left; TreeNode* right; TreeNode(int x) : val(x), left(NULL), right(NULL) {} }; 我想测试它是否是平衡二叉树,反转二叉树,等等。所以我必须像这样初始化一棵树: 4 \ 2 / 6 ...for向量输入= {4,NULL,2,6},或者{4,-99
浏览 1
提问于2016-01-27
得票数 0
1
回答
对于给定的数据集,可以有多个有效的BST吗?
、
、
、
给定二叉树中的一组数据,如数字1到10,是否可能存在多个平衡的二叉树? 或者该数据集只有一个唯一的平衡BST? 谢谢
浏览 0
提问于2013-05-27
得票数 5
回答已采纳
1
回答
包含其他二叉树的二叉树
、
我有一个函数,它可以判断给定的二叉树A是否包含在给定的二叉树B中。该函数将“包含的”定义为"A被B覆盖,或者B的任何完整的子树。“例如,如果树A是空树,而树B不是,那么A会因此包含在B中吗?如果它们都是空的呢? 谢谢!
浏览 0
提问于2012-09-30
得票数 1
7
回答
链表相对于二叉树的优势是什么?
、
、
标题大多不言自明:链表相对于二叉树的优势是什么?我能想到的唯一更有效的情况是遍历每个元素,在这种情况下它仍然非常接近。看起来二叉树在访问数据和插入新元素方面都更快。那么为什么要使用链表呢?
浏览 1
提问于2010-01-10
得票数 4
回答已采纳
5
回答
树型数据结构
、
、
我试着理解什么是排序树,二叉树,avl和...我仍然不确定,排序后的树是如何排序的?在排序的树中搜索和在未排序的树中搜索之间的复杂度(Big-Oh)是多少?希望你能帮助我。
浏览 0
提问于2009-05-31
得票数 0
回答已采纳
4
回答
在java中遍历非二叉树
、
我有一棵不是二叉树的树,每个节点都有两个以上的子节点,我正在寻找一种遍历这棵树的算法,我在学习数据结构方面真的很新手,我知道如何遍历二叉树,但当涉及到遍历非二叉树时,我会迷路。有谁能给我个提示吗?
浏览 1
提问于2013-10-13
得票数 15
1
回答
这棵二叉树的顺序顺序是什么?
、
我试图找到一个二叉树,它的所有键都不同,但是三个顺序相同的遍历顺序是相同的,所以我想到了这棵树: 1 \ 2 \ 3 \ 4 因此,基本上没有剩下的儿子,但我不确定这是否会导致类似的三次穿越。 那么postorder=inorder=preorder = 1234吗?
浏览 4
提问于2021-12-24
得票数 0
回答已采纳
3
回答
无自然排序的二叉树搜索
、
这是一个多部分的问题。 如果数据不具有自然排序,是否可以进行二叉树搜索?你是否会被迫对这些数据强制进行人为的排序?比如图像?或者可执行文件?还是录像?还是声音文件?没有一个明显的字母或数字顺序的项目(我的想法‘自然’总顺序)。 还是在这一点上使用hashmap更好呢?
浏览 0
提问于2016-04-27
得票数 3
回答已采纳
1
回答
排序算法边界证明
、
基于此幻灯片: 为什么N! Q1> orderings =>至少N!离开了? Q2>为什么选择#leaves >= N! 2^h >= #叶子的原因是,2^h表示完全二叉树中的叶子数量,而#leave是大多数时间来自不完整二叉树的时间。
浏览 4
提问于2013-03-07
得票数 0
回答已采纳
1
回答
给定预序二叉树访问,构造具有相同预序访问的二叉树。(如果可能)
、
、
、
我正在尝试解决这个问题:“给出一个二叉树,检查他的预排序访问,并用相同的预排序访问建立一个二进制搜索树。证明它总是可能的,如果不可能,请给出一个例子。”有什么帮助吗?我需要编写伪代码,并给出时间复杂度,但我对为每一棵可能的二叉树构建具有相同预序访问的二进制搜索树有很多疑问。
浏览 27
提问于2019-01-13
得票数 2
2
回答
优先级队列数据结构的术语?
、
、
、
我一直在使用一种数据结构,最初的开发人员称之为heap,它用于实现优先级队列。 虽然有很多关于二叉树的文章,但(min/max)堆似乎定义得不太好(细节因实现而异)。 我注意到一些不一定适用于二叉树结构的特性。 相同的元素可以多次出现在队列中,而不会造成执行或实现上的复杂性。 搜索(虽然可能并且比彻底搜索更快),但效率不高(因为每个节点的子元素不需要平衡)。 由于搜索效率不高,而且可能存在重复搜索,因此删除可能需要存储对node的引用,而不是使用key查找节点(这是二叉树的常见做法)。 ,与二叉树相比。 (与二叉树相比,最好的情况更好,最差的情况更糟) 对于符合这些特征
浏览 4
提问于2017-10-31
得票数 1
回答已采纳
1
回答
排序二叉树
、
当试图将一组数字排序到二叉树中时,是否总是有一种方法来对它们进行排序,以便树的高度最短,换句话说,是最有效的?
浏览 2
提问于2013-10-17
得票数 1
回答已采纳
2
回答
搜索根本不存在的节点时要执行的最大比较次数
、
对于这个二叉树,为了搜索一个根本不存在的节点,要执行的最大比较次数是多少。
浏览 0
提问于2020-01-09
得票数 0
2
回答
空的二叉树的插入值
我有一个与二叉树相关的问题。 他们已经给出了 从一个空的二叉树开始,插入以下哪一个整数键序列可以产生上面的二叉树? 有人能解释一下这背后的逻辑吗? 答案是5,3,4,9,1,7.有人能解释一下这是怎么回事吗。
浏览 0
提问于2015-11-08
得票数 0
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
二叉树的镜像
二叉树的遍历
数据结构2 树与二叉树
二叉树的简单介绍
第二颗树——规则树 规则学习
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券