首页 > TAG信息列表 > GList

广义表

广义表是n个元素的有限序列,每一个元素都是原子项或者是广义表,通常记作LS=(a1,a2,an),如果是a1广义表为其字表称为表头,其余元素为表尾。 广义表的性质: (1)广义表的元素可以是子表或是元素,而子表内还可以包含子表,因此广义表可以多层结构。 (2)广义表具有递归和共享的性质。 广义表的基本运

链表和广义表的习题

答案: // 总的代码,包括存储结构、初始化创建、输出个数 #include<stdio.h> #include<malloc.h> //十字链表的存储结构 typedef struct OLNode{ // 非零元素的行和列下标 int i,j; int e; // 非零元素所在行表列表的后继链域 struct OLNode * right, *do

吴裕雄--天生自然数据结构:广义表的存储结构

使用顺序表实现广义表结构,不仅需要操作 n 维数组(例如 {1,{2,{3,4}}} 就需要使用三维数组存储),还会造成存储空间的浪费。 使用链表存储广义表,首先需要确定链表中节点的结构。由于广义表中可同时存储原子和子表两种形式的数据,因此链表节点的结构也有两种     表示原子的节点由

吴裕雄--天生自然数据结构:广义表的复制

复制一个广义表,也是不断的复制表头和表尾的过程。如果表头或者表尾同样是一个广义表,依旧复制其表头和表尾。 所以,复制广义表的过程,其实就是不断的递归,复制广义表中表头和表尾的过程。 递归的出口有两个: 如果当前遍历的数据元素为空表,则直接返回空表。 如果当前遍历的数据元素为该