- 1、本文档共102页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构第5章_树和二叉树
第5章 树和二叉树 5.1 树 5.2 二叉树 5.3 二叉树的遍历 5.4 线索二叉树 5.5 树、森林与二叉树的转换 5.6 哈夫曼树 5.1 树 5.1.1 树的定义及基本术语 1. 树的定义 树 (Tree) T :n(n≥0)个结点的有限集, 当n=0时,称为空树; 当n0时,满足以下条件: 1)有且仅有一个结点被称为根(Root)结点; 2)当n1时,除根结点以外的其余n-1个结点可以划分成 m(m0)个互不相交的有限集T1,T2,…,Tm,其中每一个集合本身又是一棵树,称为根的子树(SubTree)。 2. 基本术语 结点(Node)——表示树中的元素,包括数据项及若干指向其子树的分支 2. 基本术语 结点的度(Degree)——结点拥有的子树的数目 树的度——树中最大的结点度数 A的度为2,B的度为3 树的度为3; 2. 基本术语 叶子结点(Leaf)/终端结点——度为0的结点 分支结点/非终端结点——度不为0的结点 2. 基本术语 叶子结点(Leaf)/终端结点——度为0的结点 分支结点/非终端结点——度不为0的结点 孩子结点(Child)——结点的子树的根 双亲结点(Parents)——孩子结点的上层结点 兄弟结点(Sibling)——具有同一双亲结点的孩子结点 B,C为A的孩子结点; A为B,C的双亲结点; B,C互为兄弟结点; H的祖先结点为A,B,E; B的子孙结点为D,E,F,H,I。 结点的层次(Level)——从根结点算起,根为第一层,它的孩子为第二层……若某结点在第i层,则其孩子结点就在第i+l层。 树的高(深)度(Depth)——树中结点的最大层次数。 森林(Forest)——m(m≥0)棵互不相交的树的集合。 有序树与无序树——树中结点的各子树从左至右是有次序的(不能互换),否则称该树为无序树。 对于一棵反映父子关系的家族树,兄弟结点之间是按照排行大小有序的,所以它是一棵有序树 右树T中,由A结点的子树 所构成的森林为(T1,T2), 由B结点的子树所构成 的森林为(T11,T12,T13) 5.1.2 树的表示 树的逻辑结构表示法: ①树形表示法:树的最基本的表示,使用一棵倒置的树表示树结构,非常直观和形象。 5.1.2 树的表示 树的逻辑结构表示法: ②文氏图表示法:使用集合以及集合的包含关系描述树结构。 5.1.2 树的表示 树的逻辑结构表示法: ③凹入表示法:使用线段的伸缩关系描述树结构。 5.1.2 树的表示 树的逻辑结构表示法: ④括号表示法:将树的根结点写在括号的左边,除根结点之外的其余结点写在括号中并用逗号间隔。 5.1.3 树的存储结构 1.双亲数组表示 用一维数组存储树中的各个结点,包含data和parent两个字段,分别表示结点的数据值和其双亲在数组中的下标。树中结点可按任意顺序存放。 规定下标为0的位置存储的结点是根结点。 位置 0 1 2 3 4 5 6 7 8 9 … Data Parent 5.1.3 树的存储结构 1.双亲数组表示 在双亲数组中,找某个结点的双亲或祖先是很方的,但要找某个结点的孩子或兄弟结点则比较麻烦,需要遍历整个数组。 规定下标为0的位置存储的结点是根结点。 位置 0 1 2 3 4 5 6 7 8 9 … Data Parent 2. 孩子链表存储结构 孩子链表:把每个结点的孩子结点排列起来,构成一个单链表。 n个结点的树有n个这样的孩子链表; 叶子结点的孩子链表为空表; n个链表的表头指针放在一个顺序表中。这个顺序表中的每个元素有两个字段:一个存放结点的数值;另一个存放第一个孩子的地址。 孩子链表中的每个结点也有两个字段:一个指示孩子结点的数值存放在顺序表中什么位置;另一个存放下一个孩子的地址。 在顺序表中,各元素可以按任意顺序存放。在每个孩子链表中,各结点也可以按任意顺序链接。 规定下标为0的位置存储的结点是根结点。 在孩子链表中,查 找某个结点的孩子 结点很容易,但找 结点的双亲结点则 较困难。 3.孩子兄弟链表存储结构 孩子兄弟链表存储结构是一种二叉链表,链表中每个结点包含两个指针,分别指向对应结点的第一个孩子和下一个兄弟。 T1指针指向树的根结点。 5.2 二叉树 5.2.
您可能关注的文档
- 2002夏系列之七:水果节促销策划.doc
- 2002元旦商场超市特别企划活动.doc
- 2003高起点语文命题预测试卷(一).doc
- 15测量设备控制程序.doc
- 10位医学专家给出的30个健康提示.doc
- 电脑优化小窍门给力10招.doc
- 12星座的盛夏减肥绝招.doc
- HA-5127斜杠883.pdf
- 01-测试工作规范.doc
- ALERTPAY 注册使用指南.docx
- 2022-2023学年江苏省常州市溧阳市四年级下学期期中数学真题及答案.pdf
- 2022-2023学年江苏盐城建湖县五年级上册语文期末试卷及答案.pdf
- 2021-2022学年河南省卫辉市人教版三年级上册期末考试数学试卷及答案.pdf
- 2022-2023学年浙江杭州萧山区五年级下册语文期中试卷及答案.pdf
- 2022-2023学年江苏省淮安市二年级下学期数学月考试题及答案.pdf
- 2021年山西公务员申论考试真题及答案-乡镇.pdf
- 2021年普通话考试内容题库最新版.pdf
- 2021-2022年江苏苏州太仓市六年级上册期中语文试卷及答案(部编版).pdf
- 2022-2023学年山东省滨州市博兴县四年级下学期期末数学真题及答案.pdf
- 2021年四川内江小升初语文真题及答案.pdf
文档评论(0)