书签 分享 收藏 举报 版权申诉 / 35
上传文档赚钱

类型数据结构课件:2+树和二叉树的物理实现2012.ppt

  • 上传人(卖家):罗嗣辉
  • 文档编号:2041031
  • 上传时间:2022-01-19
  • 格式:PPT
  • 页数:35
  • 大小:1.33MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《数据结构课件:2+树和二叉树的物理实现2012.ppt》由用户(罗嗣辉)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    数据结构 课件 二叉 物理 实现 2012
    资源描述:

    1、1树和二叉树树和二叉树数据结构与算法2树的(物理)存储结构3内容父指针表示法父指针表示法 树的实现树的实现 K叉树叉树 树的顺序表示法树的顺序表示法4父指针表示法5内容 父指针表示法父指针表示法树的实现树的实现v子结点表表示法子结点表表示法v左子结点左子结点/右兄弟结点表示法右兄弟结点表示法v动态结点表示法动态结点表示法v动态左子结点动态左子结点/右兄弟结点表示法右兄弟结点表示法 K叉树叉树 树的顺序表示法树的顺序表示法6子结点表表示法Lists of Children7左子结点/右兄弟结点表示法 (1)8左子结点/右兄弟结点表示法(2)9内容 树的定义与术语树的定义与术语 父指针表示法父指针

    2、表示法树的实现树的实现v子结点表表示法子结点表表示法v左子结点左子结点/右兄弟结点表示法右兄弟结点表示法v动态结点表示法动态结点表示法v动态左子结点动态左子结点/右兄弟结点表示法右兄弟结点表示法 K叉树叉树 树的顺序表示法树的顺序表示法10Linked Implementations (1)11Linked Implementations (2)12树替换为二叉树左子结点左子结点/右兄弟结点表示法本质上使用二叉右兄弟结点表示法本质上使用二叉树来替换树树来替换树.使用这种方法可以把任意树替换为二叉树使用这种方法可以把任意树替换为二叉树.森林是一个或多个树的集合森林是一个或多个树的集合.13内容

    3、树的定义与术语树的定义与术语 父指针表示法父指针表示法 树的实现树的实现 K叉树叉树树的顺序表示法树的顺序表示法14树的顺序表示法 (1)按照先根周游的顺序访问结点的值按照先根周游的顺序访问结点的值.节省空间,但是只允许顺序查找节省空间,但是只允许顺序查找.必须保留重建树结构的信息必须保留重建树结构的信息.例子例子: 对于二叉树对于二叉树, 使用一个符号来标记使用一个符号来标记null 指针指针.AB/D/CEG/FH/I/ABDCEGFHI15树的顺序表示法(2)例子例子: 对于满二叉树对于满二叉树, 标记叶结点或分支结点标记叶结点或分支结点.AB/DCEG/FHI例子例子: 对于树对于树,

    4、 标记每个子树的结束标记每个子树的结束.RAC)D)E)BF)ABDCEGFHIRADBCFE16要点回顾要点回顾 父指针表示法 树的实现 K叉树 树的顺序表示法17二叉树的(物理)存储结构18内容 二叉树的实现二叉树的实现使用数组实现二叉树使用数组实现二叉树 使用指针实现二叉树使用指针实现二叉树19对于满二叉树和完全二叉树,显然可以将二叉树的数据元素映射到一组连续的存贮单元,反之可以按向量的下标值确定相应数据元素在二叉树中的结点位置。BDEACFGHIA B C D E F G H I123 4 5678 9完全二叉树二叉树的数组实现20但对下列二叉树存于一向量中BDEACFGA B C D

    5、 EF G123 4 5678 9101112 13 14 15BCADA BC123 4 5678D21显然要浪费大量的存贮单元,此外,若要在二叉树中插入或删除结点时,更为不便。因此,以顺序结构存贮一般的二叉树是不适宜的。通常情况下,采用多重链表结构(对于非满二叉树和非完全二叉树)来作为二叉树的存贮结构。22使用数组来实现完全二叉树 (1)Position012345678910 11Parent-00112233445Left Child1357911-Right Child246810-Left Sibling-1-3-5-7-9-Right Sibling-2-4-6-8- 10-23

    6、Parent(r) = (r-1)/2 当当 0rn 时时 Left child(r) = 2r+1 当当 2r+1n 时时 Right child(r) = 2r+2 当当 2r+2n 时时 Left sibling(r) = r-1 当当r为偶数且为偶数且 0rn 时时 Right sibling(r) = r+1 当当r为奇数且为奇数且 r+1n 时时 使用数组来实现完全二叉树 (2)24二叉树 二叉树的实现二叉树的实现 使用数组实现二叉树使用数组实现二叉树使用指针实现二叉树使用指针实现二叉树25Binary Tree Implementation (1)26Binary Tree Im

    7、plementation (2)27ADEBCF rootlchild data rchild结点结构结点结构:二叉链表28ADEBCF root 三叉链表parent lchild data rchild结点结构结点结构:290123456 data parent结点结构结点结构:双亲链表LRTagLRRRL30空间代价Space Overhead (1)根据满二叉树定理根据满二叉树定理: 一半的指针是空指针一半的指针是空指针.如果叶子只存储数据如果叶子只存储数据,那么额外开销依赖于树那么额外开销依赖于树是否是满的是否是满的.例例: 所有的结点采用带有两个指向子结点的指针的所有的结点采用带有

    8、两个指向子结点的指针的相同的结构相同的结构: 全部的空间需求是全部的空间需求是 (2p + d)n 额外开销额外开销: 2pn If p = d, this means 2p/(2p + d) = 2/3 overhead.31Space Overhead (2)在满二叉树中,去掉叶结点中的指针会省下大量空在满二叉树中,去掉叶结点中的指针会省下大量空间间: n/2(2p) p n/2(2p) + dn p + d如果如果 p = d,结构性开销将达到全部空间的一半结构性开销将达到全部空间的一半.2p/(2p + d) if data only at leaves 2/3 overhead.注意

    9、一些方法需要区分叶结点和分支结点注意一些方法需要区分叶结点和分支结点.=空间开销空间开销有n个结点的满二叉树每个结点都存储两个子结点指针和一个数据去掉叶结点中的指针只有叶结点存储数据(分支结点的数据区没有使用)分支结点只存储指针, 叶结点只存储数据总共需要空间2pn+dn2pn/2+dn2pn/2+dn2pn/2+dn/2结构性开销在全部开销中所占比例若p=d=2/3=1/2=3/4=2/3dppdnpnpn2222dppdnpnpn)2(2)2(2dpdpdnpndnpn222)2(22)2(2dppdnpnpn222)2(2)2(233要点回顾要点回顾 使用指针实现二叉树 使用数组实现二叉树 树型结构是一种动态的,非线性的,可描述结构层次特性的数据结构,如何物理存数(二叉)树是非常重要的! 二叉树的性质是很重要的34课后思考课后思考 通过对二叉树存储结构的学习,请思考如何把实际问题中的具有树型关系的数据存储到物理存储结构(内存)中? 模拟可能的实际树型关系的数据(如何表示),并设计方法如何用某种选定的树型物理存储结构来存储。请邮件告诉我()35二叉树的遍历。 课后预习课后预习

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:数据结构课件:2+树和二叉树的物理实现2012.ppt
    链接地址:https://www.163wenku.com/p-2041031.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库