zoukankan      html  css  js  c++  java
  • 《大话数据结构》中介绍的三种树的存储结构的表示方法的总结

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

    双亲表示法

           1.容易找到双亲结点。

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

    改进

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

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

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

    2.增加右兄弟域,

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

    孩子表示法

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

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

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

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

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

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

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

    祝你早日攒够失望,然后开始新的生活。
  • 相关阅读:
    遍历系统进程
    AS3.0实现图像的扭曲
    CMainFrame, View, Doc, App之间的组织
    进程的创建
    自定义异常
    VC6.0快捷键(转载)
    WinMain与应用程序类之间的联系
    解决在Chrome下无法获取showModalDialog返回值的问题
    用js编解码base64
    根据一个绝对路径获取相对路径的方法
  • 原文地址:https://www.cnblogs.com/LuRenJiang/p/6368442.html
Copyright © 2011-2022 走看看