树:树、二叉树、森林基本定义
来源:互联网 发布:淘宝网卖家中心官网 编辑:程序博客网 时间:2024/05/20 13:08
树和二叉树的区别:
1)树中结点的最大度数没有限制,而二叉树结点的最大度数为2;
2)树的结点无左、右之分,而二叉树的结点有左、右之分。
二叉树,树,森林之前遍历对比:
相关术语:
树的结点:包含一个数据元素及若干指向子树的分支;
孩子结点:结点的子树的根称为该结点的孩子;
双亲结点:B 结点是A 结点的孩子,则A结点是B 结点的双亲;
兄弟结点:同一双亲的孩子结点; 堂兄结点:同一层上结点;
祖先结点: 从根到该结点的所经分支上的所有结点子孙结点:以某结点为根的子树中任一结点都称为该结点的子孙
结点层:根结点的层定义为1;根的孩子为第二层结点,依此类推;
树的深度:树中最大的结点层(第一层根节点深度为1)
树的宽度:具有最多结点数的层中包含的结点数。
树的高度:从叶节点开始(其高度为1)自底向上逐层累加的
结点的度:结点子树的个数
树的度: 树中最大的结点度。
叶子结点:也叫终端结点,是度为 0 的结点;
分枝结点:度不为0的结点;
有序树:子树有序的树,如:家族树;
无序树:不考虑子树的顺序;
二叉树的基本形态
二叉树也是递归定义的,其结点有左右子树之分,逻辑上二叉树有五种基本形态:
(1)空二叉树——(a);
(2)只有一个根结点的二叉树——(b);
(3)只有右子树——(c);
(4)只有左子树——(d);
(5)完全二叉树——(e);
二叉树的性质
(1) 在二叉树中,第i层的结点总数不超过
(2) 深度为h的二叉树最多有
(3)具有n个结点的完全二叉树的深度为
(例如:树的最大层次就是深度,比如上图,深度是4。很容易得出,深度为k的树,拥有的最大结点数是
1,满二叉树
除最后一层无任何子节点外,每一层上的所有结点都有两个子结点(最后一层上的无子结点的结点为叶子结点)。也可以这样理解,除叶子结点外的所有结点均有两个子结点。节点数达到最大值。所有叶子结点必须在同一层上.
2,完全二叉树
若设二叉树的深度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第 h 层所有的结点都连续集中在最左边,这就是完全二叉树。
完全二叉树是由满二叉树而引出来的。对于深度为K的,有N个结点的二叉树,当且仅当其每一个结点都与深度为K的满二叉树中编号从1至n的结点一一对应时称之为完全二叉树。
若一棵二叉树至多只有最下面的两层上的结点的度数可以小于2,并且最下层上的结点都集中在该层最左边的若干位置上,则此二叉树成为完全二叉树。
- 树:树、二叉树、森林基本定义
- 树的基本定义,二叉树,二叉排序树,森林,最优二叉树(哈夫曼树,哈夫曼编码)
- 树、二叉树、森林
- 树、森林、二叉树
- 二叉树转换成森林&森林变成二叉树
- 数据结构---树、二叉树、森林
- 树、森林与二叉树
- 二叉树、树、森林转换
- 树,森林,二叉树转换
- 树 森林 二叉树转换
- 森林转换为二叉树
- 森林转换成二叉树
- 二叉树的定义及基本操作
- 二叉树的基本定义和遍历
- 二叉树的定义与基本操作
- 树:树、森林、二叉树的转换
- 树、森林与二叉树的转换
- 树,森林,二叉树之间的转换
- hexo安装成功,并且正确运行,但是localhost:4000不能访问
- Portal常见问题解析
- 【OSG】error LNK2019: 无法解析的外部符号 该符号在函数 中被引用 解决方案
- mysql trim标签用法
- Appendix Qt Lambda表达式
- 树:树、二叉树、森林基本定义
- C# button自定义控件
- 【Nginx】使用Nginx做反向代理时,关于被代理服务器相应的超时设置
- 穷举法--火柴棍等式问题
- 如何在iOS7项目中导入snapkit
- java中instanceof用法
- Maven学习笔记 --- Maven入门笔记二
- Android 块设备驱动之二
- chrt命令