一,定义
例如上面的思维导图也是树结构。
可以理解成,有多个后继结点的链表。也同样的,结点只能向下查询,不能回访。
1)度
*结点的度:往下有多少个结点。
树的度:各个结点度的最大值。
**度为m和m叉树的区别。
2)无序树和有序树
有序树:各个结点从左至右是有顺序的,位置不能互换。
无序树:各个结点从左至右是无顺序的,可以互换位置。
森林:多棵树组成的树林。
二,二叉树(有序)
1)几种特殊的二叉树
满二叉树
只有最后一层有叶子结点
不存在度为1的结点(要么为2,要么没有)
按层序从1开始编号,结点i的左孩子为2i,右孩子为2i+1;结点为i的父亲节点为[i/2]
完全二叉树
相对于满二叉树,完全二叉树可以删去编号比较大的几个结点。(依次的)
特点:
只有最后两层可能有叶子结点
最多只有一个度为1的结点
按层序从1开始编号,结点i的左孩子为2i,右孩子为2i+1;结点为i的父亲节点为[i/2]
*满二叉树是完全二叉树的一种特殊情况
二叉排序树
子节点 左小右大 (相对于根节点)
平衡二叉树:左右子树的深度之差不超过一
二叉树常见的性质
1)设非空二叉树中 度为0,1,2的结点的个数风别为N0,N1,N2,则 N0 = N2+1。
2)
3)
4)
4)