树和二叉树,完美/满二叉树和完全二叉树之间的区别对比

简介: 树和二叉树,完美/满二叉树和完全二叉树之间的区别对比

首先说树和二叉树:

一、性质不同


树:树是一种数据结构可以有多个子树。


二叉树:二叉树是每个结点最多有两个子树的一种树结构。


二、结点不同

树:树的每个结点有零个或多个子结点;没有父结点的结点称为根结点;每一个非根结点有且只有一个父结点。


二叉树:每个结点最多有两个子树。



三、种类不同


树:树的种类包括无序树、有序树、二叉树和霍夫曼树等。


二叉树:二叉树的种类包括完全二叉树、满二叉树和平衡二叉树。


完美/满二叉树和完全二叉树:


满二叉树和完全二叉树的区别:

完全二叉zhi树是由满二叉树而引出来的。对于深度为K的,有n个结点的dao二叉树,当且仅当其每一个结点都与深度为K的满二叉树中编号从1至n的结点一一对应时称之为完全二叉树。


对于满二叉树,除最后一层无任何子节点外,每一层上的所有结点都有两个子结点二叉树。而完全二叉树是效率很高的数据结构,完全二叉树是由满二叉树而引出来的。对于深度为K的,有n个结点的二叉树,当且仅当其每一个结点都与深度为K的满二叉树中编号从1至n的结点一一对应时称之为完全二叉树。


1.满二叉树



定义:一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是满二叉树。也就是说,如果一个二叉树的层数为K,且结点总数是(2^k) -1 ,则它就是满二叉树。


2.完全二叉树



定义:若设二叉树的深度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第 h 层所有的结点都连续集中在最左边,这就是完全二叉树。


满二叉树就是每个节点都有两个子节点,每层都是满满的,而完美二叉树就是不需要每层都是慢慢的,只要满足每个节点都有两个子节点即可。完全二叉树就是除了最底层以外,其它层都是节点下有两个子节点,并且最下层的子节点集中在左侧。


相关文章
|
6月前
|
算法 C++ 开发者
【C/C++ 数据结构 】二叉树基本性质:对于任何一颗二叉树T,若其终端结点为n0 ,那么度数为2的结点数为n2。则n0=n2+1...
【C/C++ 数据结构 】二叉树基本性质:对于任何一颗二叉树T,若其终端结点为n0 ,那么度数为2的结点数为n2。则n0=n2+1...
74 0
【数据结构】对称二叉树 && 另一颗树的子树(六)
【数据结构】对称二叉树 && 另一颗树的子树(六)
62 0
树和二叉树(三)
树和二叉树(三)
|
6月前
|
存储
树与二叉树
树与二叉树
|
存储 算法 数据库管理
树和二叉树(二)
树和二叉树(二)
|
存储
树和二叉树
树和二叉树
68 0
|
11月前
|
存储 算法 大数据
树形结构——二叉树专题总结——满二叉树,完全二叉树(堆),普通二叉树以及相应的数据管理方式(下)
树形结构——二叉树专题总结——满二叉树,完全二叉树(堆),普通二叉树以及相应的数据管理方式(下)
61 0
|
11月前
|
存储 Linux 文件存储
树形结构——二叉树专题总结——满二叉树,完全二叉树(堆),普通二叉树以及相应的数据管理方式(上)
树形结构——二叉树专题总结——满二叉树,完全二叉树(堆),普通二叉树以及相应的数据管理方式(上)
62 0
|
存储 人工智能 BI
树和二叉树(一)
树和二叉树(一)
|
存储 机器学习/深度学习 算法
九、树和二叉树
九、树和二叉树
九、树和二叉树