n个节点的平衡二叉树的深度,与这些节点 理想平衡二叉树的深度 相差不能超过多少? 求围观 求大神解答!

Carry-On-Tomrrow 2015-02-13 04:01:06
理想二叉树是一种特殊的满二叉树,其所有叶结点均在同一高度或者同一深度,也即一棵深度(高度)为h且有 2^h-1个结点的二叉树。也就是n个数据二进制有多少位想平衡二叉树的深度就是多少。

我认为理想平衡二叉树的深度 与 平衡二叉树的深度 不能超过1 。

验证的时候我随即向平衡二叉树中插入400个数据之前时,
理想平衡二叉树的深度 与 平衡二叉树的深度 相差不超过1。

验证的时候我随即向平衡二叉树中插入500个数据时,500的二进制是 111110100 也就是说
理想平衡二叉树的深度为9, 程序中计算该平衡二叉树的深度为11,为什么会相差两层呢?



...全文
1068 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
SamYaocsdn 2016-01-23
  • 打赏
  • 举报
回复
平衡二叉树高度跟完全二叉树的确是不同的。 也并不是差1. 因为平衡二叉树在高度为h情况下 最小节点数为Fibonacci数列(下标并不恰好对应),最多节点数则为2^h 所以在节点数为n的情况下其最大高度应该为对应刚好比他大fibonacci数列所对应的高度(反证法)
鸣鸣Amadues 2015-02-21
  • 打赏
  • 举报
回复
其实这个平衡二叉树是用在哪个方面的?除了纯理论研究外。
c090869 2015-02-20
  • 打赏
  • 举报
回复
好像可以参考一下堆排序的原理。
u010979898 2015-02-14
  • 打赏
  • 举报
回复
除了最后一层其他都得是满的 你可以试试来个层序遍历 看看哪层少了
Carry-On-Tomrrow 2015-02-13
  • 打赏
  • 举报
回复
不知道表达清楚了没有, 先自顶一个, 有大神要看代码的话,我再发代码

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧