[计算机软件及应用]第3章 链表.pptVIP

  1. 1、本文档共73页,可阅读全部内容。
  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文档。上传文档
查看更多
[计算机软件及应用]第3章 链表

3.5 广义表 广义表例: A=( ) — 空表 n = 0; 可表示为:A ( ) ; B = ( e, f ) — 仅含原子的表,长度2,可表示为B ( e, f ); C = ( a, B) —表头a , 表尾(B),长度 2,可表示为C ( a, B ); D = (g, A, C) —表头g ,表尾(A,C),长度2,可表示为D ( g, A, C); 3. 广义表的性质 ① 有序性:元素在表中线性排列; ② 有限长度:表元素个数一定,允许是空表; ③ 有深度:表元素可以是子表,其中元素还可以是子表(多层) ; ④ 可递归:表可以是自己的子表—— 递归表.如: E=(C, E); ⑤ 可共享:表可以为其他广义表共享——共享表(再入表), 如: D ( B, A, C ) 3.5 广义表 4. 广义表的图形表示 图素:○:表结点, □ :原子结点, —:结点间连线 层次:顶端的○表示全表,自顶向下按层展开;如: 表的深度: 表的嵌套层数 — 表结点的最大层数 — 表的括号层数 f a e e f g a f e A B C D 3.5 广义表 二、广义表的存储结构 存储方式——动态链式存储结构 数据元素——结点 (单元素结点, 子表结点 ) 原子结点形式: flag = 1 子表结点形式: flag = 0 如: GL flag data next flag sublist next 0 ∧ 0 ∧ 0 ∧ 1 g 1 a 1 f ∧ 1 e 3.5 广义表 为方便有些运算, 可以附加一个表头结点: GL 此时, 可对表头结点单独标记: 附加表头结点: 0 ∧ 0 ∧ 0 ∧ 1 g 1 a 1 f ∧ 1 e 0 ∧ flag data next flag sublist next flag sublist ∧ flag=2 flag=0 flag=1 3.5 广义表 结点类型定义: enum Node_type {head, atom, slist} ; typedef struct GLNode { Node_Type flag ; union { ElemType data ; struct GLNode *Sublist ; } value ; struct GLNode *next ; } GLNode ; 3.5 广义表 三、广义表的基本运算 1. 求广义表的长度 表长度 — 由第一层结点的 next 指针所链接的结点数 算法描述: int lenth (GLNode *GL) // 不带附加表头结点 { int len ; if ( GL!=NULL) {len=lenth( GL-next ) ; // 求表尾长度 return len+1; // 返回全表长度 (表尾长度+表头) } else ruturn 0 ; } 实质:对第一层链做扫描并计数 思考: 非递归算法描述 ? 3.5 广义表 2. 求广义表深度 思路:广义表深度=max (各子表深度)+1 算法描述: int GLDepth (GLNode *GL) // 不带附加表头结点 { int dep, max = 0 ; // 子表最

文档评论(0)

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

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

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档