1 一 、 数据结构定义 1
抽象数据类型 本设计中用到的数据结构ADT 定义如下: ADT List{ 数据对象:D={|,1,2,, ,0iiaaElemSet in n} 数据关系:1R ={11,|,,1,2,,iiiiaaaaD in} 基本操作:InitList(&L) 操作结果:构造一个空的线性表L; DestroyList(&L) 初始条件:线性表L 已存在 操作结果:销毁线性表L ClearList(&L) 初始条件:线性表L 已存在 操作结果:将L 重置为空表 ListEmpty(L) 初始条件:线性表L 已存在 操作结果:若L 为空表,则返回TRUE,否则返回FALSE ListLenght(L) 初始条件:线性表L 已存在 操作结果:返回L 中数据元素的个数 2 2
存储结构定义 数据存储结构的C 语言定义如下: typedef struct LNode//定义单链表结点类型 { ElemType data; struct LNode *next; }LinkList; 3
基本操作 数据结构的基本操作实现如下: DispList(LinkList *L):输出单链表L CreatListR(LinkList *&L,ElemType a[],int n):运用尾插法建立单链表 Sort(LinkList *&head):单链表元素排序 shanchu(LinkList *&head):在进行过Sort 排序之后,删除单链表里相同的元素 bing(LinkList *&ha,LinkList *&hb,LinkList *&hc ):求两个有序集合的并 jiao(LinkList *ha,LinkList *hb,LinkList *&hc):求两个有序集合的交 cha(LinkList *ha,LinkList *hb