《大话数据结构》中介绍的三种树的存储结构的表示方法的总结

前言:在学习《大话数据结构》中的第6章树时,感觉在介绍三种存储结构的表示方法时比较凌乱,所以整理了一下。

双亲表示法

       1.容易找到双亲结点。

       2.找结点的孩子需要遍历整个结构。

改进

1.增加某个结点最左边孩子的域。

要知道其有多个孩子,必须要其下一个个结点的最左边孩子的域。

用下一个结点最左边孩子的域-这个结点左边孩子的域即这个结点的所有孩子的域

2.增加右兄弟域,

找左兄弟需要遍历整个结构,如果兄弟很多,那么找起来就不容易了。

孩子表示法

       1.找某个结点的孩子,只需要找到这个结点的孩子单链表即可。

       2.和双亲表示法一样容易遍历整棵树。

       3.如果某个结点的孩子很多,那么位于孩子单链表后边的孩子找双亲需要往前遍历到表头数组。

改进:1。在表头数组增加双亲域。(双亲孩子表示法)

孩子兄弟表示法(即二叉树表示法)

  1. 和孩子表示法差不多容易找孩子,不容易找双亲。
  2. 可以增加双亲域,那就不如用双亲孩子表示法了。
  3. 最大的好处就是把一棵复杂的树变成了一棵二叉树。

总结如果不是特殊的二叉树情况,双亲孩子表示法比较实用。

祝你早日攒够失望,然后开始新的生活。
原文地址:https://www.cnblogs.com/LuRenJiang/p/6368442.html