一.树的定义
树是一种数据结构,也是n(n>=0)个结点的有限集合,互不相交集合。当n=0时,是一颗空树。
把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。
二.树的遍历
有前序遍历(根左右),后序遍历(左右根)和层序遍历(从上到下,从左到右依次遍历)。
三.树的存储结构
1.双亲表示法:
除根结点外,每个结点都仅有一个直接双亲结点。每个结点都存储数据和他的直接双亲结点的下标。根结点没有双亲,所以双亲下标为-1。
2.孩子表示法
顾名思义就是每个结点存储孩子结点。这和双亲表示法一样,也是存储下标。但是由于每个结点的孩子不止一个,所以我们还要一个结构来存孩子。那么就可以是顺序存储和链接存储。一下讲解都是以链接存储为例。
3.孩子兄弟表示法
孩子兄弟表示法又称二叉链表表示法。每个结点存储数据域及第一个孩子和右兄弟。