知识大全 09年自考《数据结构》各章要点二[2]

Posted 结点

篇首语:贵在坚持,难在坚持,成在坚持。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 09年自考《数据结构》各章要点二[2]相关的知识,希望对你有一定的参考价值。

  满二叉树是一棵深度为k 结点数为( ^k) 的二叉树 完全二叉树是满二叉树在最下层自右向左去处部分结点

  二叉树的顺序存储结构就是把二叉树的所有结点按照层次顺序存储到连续的存储单元中 (存储前先将其画成完全二叉树)

  树的存储结构多用的是链式存储 BinTNode的结构为lchild|data|rchild 把所有BinTNode类型的结点 加上一个指向根结点的BinTree型头指针就构成了二叉树的链式存储结构 称为二叉链表 它就是由根指针root唯一确定的 共有 n个指针域 n+ 个空指针

  根据访问结点的次序不同可得三种遍历 先序遍历(前序遍历或先根遍历) 中序遍历(或中根遍历) 后序遍历(或后根遍历) 时间复杂度为O(n)

  利用二叉链表中的n+ 个空指针域来存放指向某种遍历次序下的前趋结点和后继结点的指针 这些附加的指针就称为 线索 加上线索的二叉链表就称为线索链表 线索使得查找中序前趋和中序后继变得简单有效 但对于查找指定结点的前序前趋和后序后继并没有什么作用

  树和森林及二叉树的转换是唯一对应的

  转换方法

  ·树变二叉树 兄弟相连 保留长子的连线

  ·二叉树变树 结点的右孩子与其双亲连

  ·森林变二叉树 树变二叉树 各个树的根相连

  树的存储结构

  ·有双亲链表表示法 结点data | parent 对于求指定结点的双亲或祖先十分方便 但不适于求指定结点的孩子及后代

  ·孩子链表表示法 为树中每个结点data | next设置一个孩子链表firstchild 并将data | firstchild存放在一个向量中

  ·双亲孩子链表表示法 将双亲链表和孩子链表结合

  ·孩子兄弟链表表示法 结点结构leftmostchild |data | rightsibing 附加两个分别指向该结点的最左孩子和右邻兄弟的指针域

cha138/Article/program/sjjg/201311/22735

相关参考