1. 数据结构定义
参见 博文 “数据结构 - 02 - 线性” https://mp.csdn.net/console/editor/html/107120598
2. 树
树 是以分支关系定义的层次结构。
在n个节点的有限集中,
(1) 有且仅有 一个特定节点 称为 根。
(2) 其余节点可分为m个互不相交的子树。
3. 二叉树
在树定义的基础上,增加一点
(3)每个节点至多只有两颗子树。
3.2. 二叉树的子集
通过对 二叉树的限定,可以得到一些特性性质的二叉树,譬如 满二叉树、红黑树、大堆、小堆,不拉不拉。。。
4. 特定二叉树应用和分析:
4.1 二叉树的遍历
这里提到的 前中后,都是以中间节点为参考物的。表示访问中间节点的先后顺序。
4.1.1 中序遍历
中序遍历就是先访问左节点,再访问根节点,最后访问右节点, 结果为:DBEFAGHCI
4.1.2 前序遍历
前序遍历就是先访问根节点,在访问左节点,最后访问右节点,结果为:ABDFECGHI
4.1.3 后序遍历
后序遍历就是先访问左节点,再访问右节点,最后访问根节点。结果为:DEFBHGICA
4.2 满二叉树
除最后一层无任何子节点外,每一层上的所有结点都有两个子结点的二叉树。
4.3 大/小堆
大堆:每个父节点的都大于孩子节点。
小堆:每个父节点的都小于孩子节点
reference:
1. 《数据结构》 ---- 严蔚敏、吴伟民
2. 二叉树遍历详解 https://www.cnblogs.com/du001011/p/11229170.html