满二叉树、完全二叉树、平衡二叉树、哈夫曼树

满二叉树:除了叶节点外每一个结点都有左右子女且叶节点都处在最底层的二叉树。

这个满二叉树应该很好想象,就是一颗非常完美的树,除了叶节点其他节点都有两个孩子。

《满二叉树、完全二叉树、平衡二叉树、哈夫曼树》

完全二叉树:只有最下面的两层结点度小于2,并且最下面一层的结点都集中在该层最左边的若干位置的二叉树。

也就是说,在满叉树的基础上,我在最底层从右往左删去若干节点,得到的都是完全二叉树。

所以说,满二叉树一定是完全二叉树,但是完全二叉树不一定是满二叉树

下面来看一个完全二叉树的例子:

《满二叉树、完全二叉树、平衡二叉树、哈夫曼树》

平衡二叉树:又称为AVL树,它是一颗空树或它的左右两个子树的高度差的绝对值不超过1

哈夫曼树:带权路径长度达到最小的二叉树,也叫做最优二叉树。

注意到这里,哈夫曼树只是一棵最优二叉树,不一定是完全二叉树,也不一定是平衡二叉树。完全是八竿子打不着的事情,人家哈夫曼树不关注树的结构,只关注带权路径长度好吗。。


下面再说几点关于二叉树性质,对于解答笔试题中的小题目很有用。

1.对于一棵有着k层的二叉树,最多有节点个数为 2^k-1,最少有k个节点

2.对于第k层,最多有节点个数为 2^(k-1)个

3.对于一棵非空的二叉树,叶子节点数目总比度为2的节点数要多1

    原文作者:满二叉树
    原文地址: https://blog.csdn.net/ls5718/article/details/52434819
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞