1.树中的一些基本概念总结:
1)祖先/子孙:从树中的一个指定结点x到根结点r的唯一路径上的所有结点都是x的祖先;x为它们的子孙。
注:每个结点都是自己本身的祖先和子孙。
2)真祖先/真子孙:根据1)中的定义,除了自己外,就有了真祖先/真子孙的概念。
3)父结点/子结点:从根结点到指定的x结点唯一路径中最后一条边是(y,x),则y是x的父结点,x是y的子结点。
4)兄弟:如果两个结点的父结点相同,则称这个两个结点为兄弟。
5)叶子结点/内部结点:没有子结点为叶子结点,非叶子结点为内部结点。
6)度:结点的子结点个数称为度。
7)深度:从根结点到指定结点的长度。
8)高度:从结点向下到某个结点最长简单路径中边的条数。树的高度是根高度,也是树中结点的最大深度。
2.二叉树与树的区别?
1)树中结点的最大度数没有限制,而二叉树结点的最大度数为2;
2)树的结点无左、右之分,而二叉树的结点有左、右之分。
3.什么是完全二叉树?
若设二叉树的高度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第 h 层有叶子结点,并且叶子结点都是从左到右依次排布。
4.什么是满二叉树?
除了叶结点外每一个结点都有左右子结点且叶子结点都处在最底层的二叉树。
5.二叉树的性质:
1) 在二叉树中,第i层的结点总数不超过2^(i-1);
2) 深度为h的二叉树最多有2^h-1个结点(h>=1),最少有h个结点;
3) 对于任意一棵二叉树,如果其叶结点数为N0,而度数为2的结点总数为N2,则N0=N2+1;
4) 具有n个结点的完全二叉树的深度为int(log2n)+1