双亲表示法
采用一组连续的存储空间来存储每个结点,同时在每个结点中增设一个伪指针,指示双亲结点在数组中的位置,根结点的下表为$0$,其伪指针域为$-1$。
1 |
|
孩子表示法
将每个结点的孩子结点都用单链表连接起来形成一个线性结构,$n$个结点具有$n$个孩子链表。
1 |
|
孩子兄弟表示法
以二叉链表作为树的存储结构,又称二叉树表示法(左孩子右兄弟)。
1 | typedef struct CsNode{ |
根结点右指针为空——没有兄弟结点
区别与联系
方法 | 优点 | 缺点 |
---|---|---|
双亲表示法 | 寻找结点双亲结点效率高 | 寻找结点的孩子结点效率低 |
孩子表示法 | 寻找结点的孩子结点效率高 | 寻找结点的双亲结点效率低 |
孩子兄弟表示法 | 寻找结点的孩子结点效率高 方便实现树转换为二叉树 |
寻找结点的双亲结点效率低 |