据结构图.pptVIP

  • 0
  • 0
  • 约1.93万字
  • 约 65页
  • 2018-03-07 发布于浙江
  • 举报
据结构图

7.8 广义表 7.8.2 广义表的存储结构 由于广义表中的数据元素可以是原子,也可以是广义表,显然难以用顺序存储结构表示,并且为了在存储结构中便于分辨原子和子表,令表示广义表的链表中的结点为“异构”结点。结点中设有一个标志域tag,并约定tag=0表示原子结点,tag=1表示表结点。 //广义表的存储表示 typedef enum {ATOM=0, LIST=1} ElemTag; typedef struct GLNode{ ElemTag tag; //公共部分,用于区分原子结点和表结点 union{ //原子结点和表结点的联合部分 AtomType data; //原子结点的值域 struct { struct GLNode *hp, *tp; } ptr; //ptr是表结点的指针域,ptr.hp和ptr.tp分别指向表头和表尾 }; }*GList; //广义表类型 7.8 广义表 D=(E,A,F) E=(e) F=(a, (b, c, d)) A=() tag=0 data tag=1 hp tp 表结点 原子结点 A=NULL 1 1 ^ 1 ^ 1 ^ 0 e D E F 1 1 ^ 0 a 1 1 1 ^ 0 b 0 c 0 d 7.8 广义表 7.8.3 广义

文档评论(0)

1亿VIP精品文档

相关文档