数据结构课件代码第4章树和二叉树351章节幻灯片.ppt

数据结构课件代码第4章树和二叉树351章节幻灯片.ppt

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3) 后序遍历 void PostOrder(BiTree bt) /* 后序遍历根指针为bt的二叉树 */ { if(bt!=NULL) { PostOrder(bt-LChild); //遍历左子树 PostOrder(bt-RChild); //遍历右子树 Visit(bt-data); //访问根结点 } } 利用遍历结果确定二叉树问题 先序序列+中序序列 中序序列+后序序列 先序序列+后序序列 (x) 先序序列: ABCDEFGH 中序序列: BDCEAFHG A B F C G D E H 利用遍历结果确定二叉树问题 仅知二叉树的先序序列abcdefg不能唯一确定一棵二叉树,如果同时已知二叉树的中序序列cbdaegf,则会如何? 由先序和中序序列确定二叉树 二叉树的先序序列 二叉树的中序序列 左子树 左子树 右子树 右子树 根 根 a b c d e f g c b d a e g f 例如: a a b b c c d d e e f f g g a b c d e f g ^ ^ ^ ^ ^ ^ ^ ^ 先序序列中序序列 * * * * 第4章 树和二叉树 张成文 北京邮电大学计算机学院 树的定义与基本术语 1.定义: 树是n(n≥0)个结点的有限集合T。当n=0时,称为空树;当n0时,该集合满足如下条件: (1) 其中必有一个称为根(root)的特定结点,它没有直接前驱,但有零个或多个直接后继。 (2) 其余n-1个结点可以划分成m(m≥0)个互不相交的有限集T1,T2,T3,…,Tm,其中Ti又是一棵树,称为根root的子树。每棵子树的根结点有且仅有一个直接前驱,但有零个或多个直接后继。 一、树(tree)的基本概念: A B C D E F G H I J M K L A( B(E, F(K, L)), C(G), D(H, I, J(M)) ) T1 T3 T2 树根 例如: (1). 树型图示 (2).嵌套集合 (3).凹入(书目) (4). 广义表(用根作为表的名字写在表的左边) A B C D E F G H I J K L M A ------------ B ---------- E -------- K ------ L ------ F -------- C ---------- G -------- D ---------- H -------- M ------ I -------- J -------- 2. 树的表示法: 线性结构 树型结构 第一个数据元素 (无前驱) 根结点 (无前驱) 最后一个数据元素 (无后继) 多个叶子结点 (无后继) 其它数据元素 (一个前驱、 一个后继) 其它数据元素 (一个前驱、 多个后继) 对比树型结构和线性结构的结构特点 结点(node): 树的度: 叶子结点(leaf) : 分支结点: 数据元素+若干指向子树的分支 树各结点的度的最大值 度为零的结点 度大于零的结点 D H I J M 3.树的相关术语 结点的度(degree): 结点拥有的子树数 结点的层次: (level) 假设根结点的层次为1,第l 层的结点的子树根结点的层次为l+1 树的深度(depth): 叶子结点所在的最大层次 分支(branch): 表示数据元素与它的子树的关系 路径(path): 常用家族树的术语表示结点关系 孩子(child) 结点 双亲(parent)结点 兄弟结点 由根到该结点所经的分支和结点构成 A B C D E F G H I J M K L 树的结点数n和分支数b的关系是: b=n-1 任何一棵非空树是一个二元组 Tree = (root,F) 其中:root 被称为根结点 F 被称为子树森林 森林(forest): 是m(m≥0)棵互不相交的树的集合 A root B C D E F G H I J M K L F 二叉树 1 二叉树的定义与基本操作 定义: 满足以下两个条件的树称做二叉树(Binary Tree): (1)每个结点的度都不大于2; (2)每个结点的孩子结点次序不能任意颠倒。 二叉树或为空树, 或是由一个根结点加上两棵分别称为

文档评论(0)

开心农场 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档