点击目录传送ฅʕ•̫͡•ʔฅ
树的定义和基本术语
- 第三类基本结构——树
- 树的结构定义是一个递归的定义
- 树的表示:1.嵌套集合 2.广义表 3.凹入表示法
- 一般,有层次的结构,都可导致一个树结构
- 树的结点:包括一个数据元素和若干指向其子树的分支
- 度----分支
- 深度----层数
- 树与森林的互相转换(左孩子右兄弟)
二叉树
- 定义,1.至多两棵子树 2.有左右之分
- 空树存在
- 五个性质:
1.对任一二叉树,
①第 i 层至多2i-1个(1层,20个)
②共 k 层至多2k - 1个()
③n0 = n2 + 1
2.对完全二叉树
④n个结点,深度为 ∟log2n」 + 1(这个下取符号不好找。。。)
⑤∟i/2」
i
2i
2i + 1
- 二叉树的存储结构:
顺序存储,一般仅存二叉树
链式存储,又叫二叉链表 - 二叉链表,有左右指针域和存数据域,若无左(右)孩子的话,左(右)指针域必为空
- 此时改为线索,就是线索链表
- 加上线索的二叉树,就是线索二叉树
遍历二叉树和线索二叉树
- 遍历就是访问每个数据元素(仅一次)
- 遍历方案:六种,若限定先左后右,则只有先、中、后序遍历了
- 先(后) + 中序,可以还原二叉树
- 中序 递归工作栈
- 二叉树 各种操作的基础,遍历
- 待续。。。