网站大量收购独家精品文档,联系QQ:2885784924

第5章 数组和广义表 36 1.ppt

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章数组和广义表361整理

HEAD(A) = φ TAIL(A) = ( ) DEPTH(A) = 1 HEAD(B) = a TAIL(B) = ( ) DEPTH(B) = 1 HEAD(C) = a TAIL(C) = ( ( a, b, c) ) DEPTH(C) = 2 HEAD(D) = ( ) TAIL(D) = ( B,C, d ) DEPTH(D) = 3 HEAD(E) = E TAIL(E) = ( e ) DEPTH(D) = ∞ 如下列均为广义表: 1、 A = ( ) 3、 C = ( a, ( a, b, c) ) 4、 D = ( A, B,C, d ) 5、 E = ( E, e ) 2、 B = ( a ) 数据结构---第5章 数组和广义表 * 规定所有表都有名字时,广义表的表示方法 例 A(a,b) B(A(a,b), c) L(A(a,b), B(A(a,b),c)) D(a, D(a, D(…))) 广义表结构的分类 纯表:与树型结构对应的广义表。 再入表:允许结点共享的广义表。 递归表:允许递归的广义表。 递归表?再入表?纯表?线性表 数据结构---第5章 数组和广义表 * 5.5 广义表的存储结构 5.5.1 方法1—头尾链表形式 [类型定义] tag=0 atom 原子结点 hp: 指示表头的指针 tp:指示表尾的指针 typedef enum {ATOM, LIST} ElemTag; // ATOM==0:原子;LIST==1:子表 typedef struct GLNode{ ElemTag tag; union { AtomType atom; struct { struct GLNode *hp, *tp; }ptr; } } * GList1; tag=1 hp tp 表结点 ptr GL=( a1, a2, ……, an ) head(GL)= a1 Tail(GL)=( a2, ……, an ) 数据结构---第5章 数组和广义表 * [示例] A=( ) A = NULL B C 1 1 ^ ^ 0 a 1 1 1 ^ 0 c 0 d 1 1 ^ 0 a 0 b 1 1 ^ D 0 a B=(a,A) C=((a,b),c,d) D=(a,D) (A) (D) (a,b) (c,d) (d) (b) GList1 A, B, C, D 数据结构---第5章 数组和广义表 * 5.5.2 方法2—扩展的线性链表形式 [类型定义] tag=1 hp tp 表结点 tag=0 atom tp 原子结点 hp: 指向表头的指针 tp: 指向同一层的下 一个结点 ( a1, a2, ……, an ) typedef enum {ATOM, LIST} ElemTag; // ATOM==0:原子;LIST==1:子表 typedef struct GLNode{ ElemTag tag; union { AtomType atom; struct { struct GLNode *hp; } } struct GLNode *tp; } * GList2; 数据结构---第5章 数组和广义表 * [示例] A 1 ^ ^ 1 ^ 0 a A=( ) 1 ^ ^ B B=(a, A) C=((a, b), c, d) C 1 ^ 1 0 c 0 d ^ 0 a 0 b ^ 1 ^ D D=(a, D) 0 a 1 ^ a D a A (a,b) c d a b GList2 A, B, C, D 张成文 北京邮电大学计算机学院 第5章 数组和广义表 数据结构---第5章 数组和广义表 * 5.1 数组和线性表的关系以及数组的运算 任何数组A都可以看作一个线性表 A=(a1, a2, …, ai , …an ) 二维数组m?n时, ai是数组中第i行所有元素,0?i?m

文档评论(0)

chenchena + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档