树及二叉树的存储结构课件.pptVIP

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
树及二叉树的存储结构课件

100;树和线性结构对照; 二叉树;二叉树不是树的特例。 特点 每个结点至多有二棵子树(即不存在度大于2的结点); 二叉树的子树有左、右之分,且其次序不能任意颠倒。 基本形态;斜树 1 .所有结点都只有左子树的二叉树称为左斜树; 2 .所有结点都只有右子树的二叉树称为右斜树; 3.左斜树和右斜树统称为斜树。;几种特殊形式的二叉树;几种特殊形式的二叉树;判断是否为完全二叉树,说明理由。;在满二叉树中,从最后一个结点开始,连续去掉任意多个结点,即是一棵完全二叉树。;二叉树的性质;;二叉树的存储结构;F; 一般二叉树也按完全二叉树形式存储,只有增添一些并不存在的空结点(用?表示,? 表示该处没有元素存在,仅仅为了好理解),使之成为一棵完全二叉树的形式,然后再用一维数组顺序存储。 ; 这种存储结构适合于完全二叉树和满二叉树,既不浪费存储空间,又能很快确定结点的存放位置、以及结点的双亲和左右孩子的存放位置,但对一般二叉树,可能造成存储空间的浪费。 例如,深度为k,且只有k 个结点的右单枝树(每个非叶 结点只有右孩子),也需2k-1个 单元,即有(2k-1)- k个单元 被浪费。;深度为4,有12个结点的完全二叉树的顺序存储;深度为4,有7个结点的一般二叉树的顺序存储;深度为4,只有4个右孩子的二叉树的顺序存储;; 所谓链式存储是指,用链表来表示一棵二叉树,即用链来指示着元素的逻辑关系。通常采用二叉链表来存储。 链表中每个结点由三个域组成,除了数据域外,还有两个指针域,分别用来给出该结点左右孩子所在的结点的存储地址。其定义如下: typedef struct BiTNode{ ElemType data; struct BiTNode *lchild,*rchild; }BiTNode,*BiTree;; ^ D; A;链式存储结构;试用二叉链表的方法创建二叉树;A;三叉链表 结点包括数据域,左子树指针域、双亲域和右子树指针域。; A

文档评论(0)

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

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

1亿VIP精品文档

相关文档