算法不会,尚能饭否之树(1)
这篇博文主要讲的是树的基本概念,是为后一篇博文做基础的。后一篇博文将主要是实现树的算法。
1 :树是由 n ( n>=0 )个节点组成的有限集合。
2 :每个子树的根节点有且仅有一个直接前驱,但可以有 0 个或多个直接后驱。不只是二叉树。
3 :节点:它包含数据项及指向其它节点的分支。
4 :节点的度:是节点所拥有的子树棵树。
5 :叶节点:就是度为 0 的节点。
6 :分支节点:除了叶节点之外的其它节点。
7 :子女节点:若节点 x 有子树,则子树节点就是子女节点。
8 :双亲节点:若节点 x 有子女,,它就是子女的双亲节点。
9 :兄弟节点:同一个双亲的子女互称为兄弟。
10 :祖先节点:从根节点到该节点所经过的所有分支上的节点。
11 :子孙节点:某一节点的子女,以及这些子女的子女都是该节点的子孙。
12 :节点所处的层次:即从根节点到该节点所经路径上的分支条数。树中任一节点的层次为它的双亲节点的层次加 1 。
13 :树的高度:树中节点所处的最大层次。
14 :树的度:树中节点的度的最大值。
15 :森林:说白点,就是很多树的集合。
二叉树的概念集合:
1 :一棵二叉树是节点的一个有限集合,该集合或者为空,或者是由一个根节点加上两棵分别为左子树和右子树的、互不相交的二叉树组成。很明显,这个概念是以递归的形式给出的。
2 :二叉树的特点是每个节点最多有两个子女。
二叉树的性质:
1 :若二叉树的层次从 0 开始,则在二叉树的第 i 层最多有 2i 个节点。
2 :高度为 k 的二叉树最大节点数为 2k+1 -1 个( k>=-1 )。
3 :对任何一棵二叉树,如果其叶节点个数为 n0 ,度为 2 的非叶节点个数为 n2 ,则有 n0 =n2 +1 。
好了,这些概念就说到这里了,还有我没有说到的概念,如果不懂,自己可以查书理会!那咱们在下一篇《算法不会,尚能饭否之树( 2 )》中见。