数据结构-树和二叉树.PPTVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构——树和二叉树 主讲:张昱 yuzhang@ustc.edu 0551-3603804 重点:二叉树的性质、遍历(先/中/后/层次) 二叉树与森林(树)的相互转换 难点:二叉树遍历算法的应用 算法:层次3 — 二叉树遍历算法的应用 层次1—赫夫曼树的构造和编码 第六章 树和二叉树 第六章 树和二叉树 6.1 树的定义和基本术语 6.2 二叉树 6.3 遍历二叉树 6.4 树和森林 6.6 赫夫曼树及其应用 6.1 树的定义和基本术语 树的定义(递归定义) 树是n(n≥0)个结点的有限集。若 n = 0,称为空树。 若 n 0,则 有且仅有一个特定的称为根的结点; 当n 1时,除根以外的其他结点划分为m(m0) 个互不相交的有限集T1, T2,… Tm,其中每一个集合本身又是一棵树,并且称为根的子树。 A 6.1 树的定义-其他表示 树的其他表示 嵌套集合、广义表表示、凹入表示 (A(B(E, F(K,L)), C(G), D(H, I, J))) A***************** B**************** E*************** F*************** K************** L************** C**************** G*************** D**************** H*************** I*************** J*************** 结点 结点的度 结点的层次 终端结点(叶子) 非终端结点(分支结点) 内部结点 6.1 树的定义-基本术语 基本术语 第1层 第2层 第3层 第4层 高度为4 孩子 双亲 兄弟 祖先 子孙 堂兄弟 树的度 树的深度/高度 有序树 无序树 森林 6.1 树的定义-ADT Tree ADT Tree 查找: Parent(T,cur_e) LeftChild(T, cur_e) RightSibling(T, cur_e) 插入:InsertChild(T, p, i, c) 删除:DeleteChild(T, p, i) 遍历:TraverseTree(T, Visit()) 6.2 二叉树 二叉树的定义(递归定义) 特点:每个结点至多只有两棵子树,子树有左右之分 二叉树 vs 度不大于2的有序树 ADT BinaryTree 二叉树 有序树 6.2 二叉树-性质 二叉树的性质 性质1:二叉树的第i层至多有2i-1个结点(i≥1) 性质2:深度为h的二叉树至多有2h –1个结点(h≥1) 思考:性质1和性质2推广到k叉树,结果会如何? 性质3:n0 = n2 + 1 结点总数 n = n0 + n1 + n2 分支数 n-1 = n1 + 2n2 思考:若包含有n个结点的树中只有叶子结点和度为k的结点,则该树中有多少叶子结点? ki-1 (kh-1)/(k-1) n = n0+nk, n-1 = knk = n0 = n-(n-1)/k 6.2 二叉树-性质 满二叉树:一棵深度为k且有2k –1个结点的二叉树 完全二叉树:对于深度为k的完全二叉树,则 1) 前k-1层为满二叉树; 2) 第k层结点依次占据最左边的位置; 3) 一个结点有右孩子,则它必有左孩子; 4) 度为1的结点个数为0或1 5) 叶子结点只可能在层次最大的两层上出现; 6) 对任一结点,若其右分支下的子孙的最大层次为l, 则其左分支下的子孙的最大层次必为l或l+1。 6.2 二叉树-性质(续) 性质4:具有n个结点的完全二叉树的深度为 由性质2 2k-1-1 n ≤ 2k-1 或 2k-1 ≤ n 2k 于是 k-1 ≤ log2n k 例:若一个完全二叉树有1450个结点,则度为1的结点个数为 1 ,度为2的结点个数为 724 ,叶子结点的个数为 725 ,有 725 个结点有左孩子,有 724 个结点有右孩子;该树的高度为 11 。(性质3、性质4以及完全二叉树的特征) 6.2 二叉树-性质(续) 性质5:如果对一棵有n个结点的完全二叉树的结点按层序编号(从第1层到第 层,每层从左到右),则对任一结点i (1 ≤ i ≤ n),有 (1) 如果i=1,则结点i是二叉树的根,无双亲;如果i 1, 则其双亲是结点 ; (2) 如果2i n,则结点i无左孩子(结点i为叶子结点);否则其左孩子是结点2i ; (3) 如果2i + 1 n,

文档评论(0)

suijiazhuang1 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档