- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
树的定义和基本术语 二叉树 遍历二叉树和线索二叉树 树和森林 赫夫曼树及其应用 树 的 定 义 树 的 表 示 (一) 树 的 表 示 (二) 树的实例(一) 树可表示具有分枝结构关系的对象 树的实例(二) ADT树的 定 义 树的 基本术语 二叉树的概念 二叉树的性质 二叉树的存储结构 一、 二叉树的顺序存储表示:用一组地址连续的存储单元存储完全二叉树的数据元素。其中编号为 i 的结点元素存放在一维数组的下标为 i-1 的分量中。 二、 二叉树的链式存储表示:表示二叉树的链 表中的结点至少包含三个域:数据域和左、右指针域。 遍历二叉树 遍历的递归算法 ——先序遍历二叉树 遍历算法的应用举例 线索二叉树 一、线索二叉树的定义 森林与二叉树的转换 树 的 遍 历 有三条搜索路径 森 林 的 遍 历 赫夫曼树及其应用 一、最优树(赫夫曼树)的概念 二、应用举例 赫夫曼编码 增添一个虚拟的“根结点”,使该二叉树成为一棵右子树为空的二叉树; 二叉树转化为森林的转换方法2: 将该二叉树转化为树。 删除该树的 根结点 。 A C B D E F G K L H I J R A B E C D F G H I J K L R R 树的遍历 森林的遍历 树和森林的遍历 按层次遍历: 先根(次序)遍历: 后根(次序)遍历: 若树不空,则先访问根结点,然后依次先根遍历各棵子树。 若树不空,则先依次后根遍历各棵子树,然后访问根结点。 若树不空,则自上而下自左至右访问树中每个结点。 先根序列: A B E F C D G H I J K 后根序列: E F B C I J K H G D A 层次序列: A B C D E F G H I J K A C B D F E G H I J K 一棵树的三种遍历序列 1)森林中第一棵树的根结点; 2)森林中第一棵树的子树森林; 3) 森林中其它树构成的森林。 森林由三部分构成: C D G K L M M B F E H I J 1.先序遍历 :若森林不空,则 访问森林中第一棵树的根结点; 先序遍历森林中第一棵树的子树森林; 先序遍历森林中(除第一棵树之外)其 余树构成的森林。 即依次从左至右对森林中的每一棵树进行先根遍历。 即依次从左至右对森林中的每一棵树进行后根遍历。 2.中序遍历: 若森林不空,则 中序遍历森林中第一棵树的子树森林; 访问森林中第一棵树的根结点; 中序遍历森林中(除第一棵树之外)其 余树构成的森林。 树与森林的遍历和二叉树的遍历的对应关系 先根遍历 后根遍历 树 二叉树 森林 先序遍历 先序遍历 中序遍历 中序遍历 树的先根序遍历与后根序遍历可通过对其相应的二叉树的进行先序遍历和中序遍历得到。 森林:树的集合 将森林中树的根看成兄弟,可用树孩子兄弟表示法存储森林;用树与二叉树的转换方法,进行森林与二叉树转换;从树的二叉链表示的定义可知,任何一棵和树对应的二叉树,其右子树必为空。所以只要将森林中所有树的根结点视为兄弟,即将各个树转换为二叉树;再按森林中树的次序,依次将后一个树作为前一棵树的右子树,并将第一棵树的根作为目标树的根,就可以将森林转换为二叉树。 转换规则: 若 F ={ T1,T2,T3,…,Tn }是森林,则 B(F)={root,LB,RB} (1)若 F 为空,即 n=0,则 B(F)为空树。 (2)若 F 非空,则 B(F)的根是T1的根,其左子树为LB,是从T1根结点的子树森林F1={T11,T12,…,T1m}转换而成的二叉树;其右子树为RB,是从除T1外的森林F’={T2,T3,…,Tn}转换而成的二叉树; 二叉树还原为森林 转换规则: 若 B(F)={root,LB,RB}是一棵二叉树,则转换为森林F ={ T1,T2,Tn }的规则为 (1)若 B 为空,则 F 为空树。 (2)若 B 非空,则 F 第一棵树T1的根是二叉树的根,T1中根结点的子森林F1是由B的左子树LB转换而成的森林,F中除T1外其余树组成的森林F’={T2,T3,…,Tn}是由B(F)的右子树RB转换转换而成的; 路径:从一个结点到另一个结点之间的若干个分支; 非完全二叉树 a b c f d e g h 路径长度:路径上的分支数目; 结点的路径长度:从根到该结点的路径长度; 树的路径长度:树中所有叶子结点的路径长度之和;在结点数相同的条件下,完全二叉树是路径最短的二叉树。 完全二叉树 a b c g d e h f PL=10 PL=9 结点的权:根据应用
文档评论(0)