目录
一.树的基础概念
树是一和非线性的数据结构,它是由n (n>=O)个有限结点组成一个具有层次关系的集合。起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。
特点:
1.有一个特殊的节点,称为根节点,根节点没有前驱节点
2.除根节点外,其余节点被分成M(M>0)个互不相交的集合T1、T2、....Tm,其中每一个集合<=M)又是一棵与树类似的子树。3.每棵子树的根节点有且只有一个前驱,可以有0个或多个后继
5.树是递归定义的。
二、如何判断树
以下三种都不是树
1.子树不相交
⒉.除了根节点没有父节点之外,每个节点有且只有一个父节点。
3.树,边的个数x,和树中节点的个数n, x = n-1(每个节点都有一个父节点,只有根节点没有父节点)4.节点和树的"度":4.节点和树的"度":
节点的度:该节点中包含的子树个数称为该节点的度树的度:树中最大的节点的度就称为了树的度35.叶子结点:度为0的节点,M,J,K都没有子树,都是叶子节点非叶子节点:度不为0的节点,还存在子树,D,l都是非叶子节点
6.根节点:没有父节点的结点,树中有且只有一个,D就是根节点
7.节点的层次(高度):从根节点开始计算,根节点为第一层,l,J,K就是第二层M就是第三层。8.树的高度:当前树中节点层次最大的即为树的高度,3
三、二叉树
二叉树:树中节点最大的度为2的树称之为2叉树
二叉树中,一个节点最多有两颗子树,二叉树节点的度<= 2;子树有左右之分,左右的顺序不能颠倒
1.特殊二叉树
完全二叉树和满二叉树
2.满二叉树:
在该二叉树中,每一层的结点个数都是最大值,每一层节点个数都是拉满的。
完全二叉树:完全二叉树的结点编号和满二叉树完全一致,在完全二叉树中不存在只有右子树而没有左子树的结点