求数据结构试题答案

设哈夫曼树中的叶子总数为m,若用二叉链表作为存储结构,则该哈夫曼树总共有多少个空指针域?
答案是2m,但总觉得奇怪,空指针域不是结点数+1吗,应该是m+1
还有
哈夫曼树中共有99个结点,则该树中有___个叶子结点;若采用二叉链表作为存储结构,则该树中有___个空指针域
这题的答案却又是50,51,很矛盾啊,是不是那错了,求有水平的人解答不要误人子弟啊啊啊
还有在问个问题,深度为k的完全二叉树最少有几个结点,最多有几个?

先回答我看的懂的。。
1.叶子节点总数为m,那他的所有节点就是2m-1啊。
2.同上。99+1=2m,m=50.50个节点。。空指针域我百度了半天,有人说是100个,有人说你画一下说不定就知道了为什么是51个了。。好像哈夫曼树还有什么什么的区别。。
深度为K最少2的k-1次幂,最多2的k次幂 减一。追问

第一题的答案我没看懂,怎么成2m-1了呢?
第二题我觉得有可能,因为第一题答案是2m,那么应该是100,但是答案又偏偏是51
第三题最少不可以是k个吗,一层一个,k层就k个,最多就是2的k次幂 减一。。。。。

追答

节点的意思就是所有点。不管是叶子还是父母还是根。所有点都是节点,你就画个最简单的二叉树,一个根节点2个子节点,不就是2m-1了。

第三个你画一下就知道了啊,第一层1个,2层2个,三层4个,四层8个。。。全加起来。这是最多的,最少就是k-1层是满二叉树,第k层只有1个。

温馨提示:答案为网友推荐,仅供参考
相似回答