http://bbs.freekaoyan.com/viewthread.php?tid=94720
一、题目以实数为原子类型,实现广义表的基本操作:输出、输入、求表长、求表深、复制、清空。
要求:必须适用于各种形式的实数(有符号、定点、浮点、整数、字符)。
二、概要设计
1.存储结构
tag d t tag h t
0
1
typedef struct Node{/*内嵌数据法*/ char tag;/*0为原子,1为子表*/ union{
datatype *d;/*原子的地址*/ struct Node *h;/*指向子表*/ };
struct Node *t;/*指向后继*/ }Node,*GList;
2.基本操作
⑴void Puts(GList L)——输出。
⑵void Gets(GList &L,char* &s)——输入。
⑶void Length(GList L,int &i)——求表长。
⑷void Depth(GList L,int &i)——求表深。
⑸void Copy(GList &L1,CBList L2)——复制。
⑹void Clear(GList &L)——清空。
