LOADING...

加载过慢请开启缓存(浏览器默认开启)

loading

求树的深度/高度

已知:结点数 n,求 k 叉树高度 h ( k > 1, n ≥ 0 )

由于每层的结点个数符合公比为k的等比数列形式 ,设深度为 H ,
结点数最多为 :

结点数最少为 :

可得:

左边为 h-1 层全为满的情况在第 h 层只有 1 个结点,
右边为 h 层全为满的情况,

上式取 log 可得:

由于 (1) 式可能求得 h 为小数,而 h 只能为整数必须向上取整 (最后一行可能不填满),
可得 :

由于 (2) 式求得的意思为:在高度为 h 时最少结点数减去 1 个结点,就变为高度是 h-1 的满树,若此时 h-1 不为整数 ( h-1 要求为整数 ) 则需要将多出来的结点数舍弃暂时不考虑,存放到下一行即可,因此需要向下取整,
可得 :

----以上为个人思考与见解,有误请指点,有想法也可联系交流!

谢谢观看!

img_show