关于二叉查找树的讨论+ 我的误解

引:一句话(66)这个问题 没有考虑设计原因,还把一个知识点混起了。

还有没有把书读懂。

 

avl是一种二叉查找树

没有二叉排序树说法(纠正书上bug

线索树是为了非递归遍历设计

 

 

Q:为什么要有二叉查找树

Q:二叉查找树如何优化

Q:查找树有哪些?

Q:书上标题为什么那么设计?

 

Q:如何不用递归取遍历树?//线索树就是

 

其实 看了导论中 二叉排序树中序的前驱、后继,

 

看懂了后继,对称比较,就知道前驱的结论

看懂了后继,再说二叉查找的删除,关键操作就搞定了。

 

不过心里还想了一个问题,

对于二叉查找树问题 除了找到中序条件的前驱、后继,

 

还能找到

后序条件的前驱、后继吗

前序条件的前驱、后继吗

 

 

--------------------------------------------------------------------------------------

 

 

 

A:比他小的,比他大的。//66补充,查找的目标。前序,后序不能查到。

 

A:

二叉排序树就是对应中序遍历 //用途

 

 

 

A:问题其实是用在,跟查找树无关。

就是线索二叉树

线索二叉树不在查找的领域//仅仅是方便遍历的复用,我认为。

利用线索二叉树可以非递归遍历。//66非递归!  翻翻书,原来遍历的需要

 

//小结66:一棵树如果又能前序,中序,后序,那么他是为遍历设计的。

 

 

A:

avl就是二叉查找树的一种 //66这是基础啊,Eskimo mention it! bst avl b树为查找而生。

 

 

//没有二叉排序树说法,书上说法kd

A:

 

3种二叉查找树,常见的

avl rbt sbt          //66我也是才知道。

sbt是中国少年发明的

avl就是平衡二叉查找树的另一个名字而已 //66所以不要被书上标题kd

 

 

A://平衡的意义!!不仅仅高度,是为了查找

 

Eskimo - -,(282957606)  15:02:31

你连avl和平衡二叉树的区别都不知道???

Eskimo - -,(282957606)  15:02:52

一根普通的二叉树平衡有任何意义吗???

Eskimo - -,(282957606)  15:02:57

服了,仔细看看书

 

 

 

A:小结关系

平衡二叉树就是优化过的二叉查找树,

用一些辅佐手段保证查找插入删除的平均时间是logn级别的

 

可不可以这么理解,就是因为二叉查找树最坏情况是o(n),

所以我们用平衡二叉树去优化他,最后 最坏是 logN,这样就圆满了

 

其实就是防止它退化成链

原文地址:https://www.cnblogs.com/titer1/p/2646462.html