- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1.这是pllist.h 自定义的头文件
// Head files for list in chapter 2 #i nclude stdio.h
#in elude stdlib.h
#in clude ctype.h
//预定义常量
TOC \o 1-5 \h \z #defi ne TRUE 1
#defi ne FALSE 0
#defi ne OK 1
#defi ne ERROR 0
#defi ne INFEASIBLE -1
#defi ne OVERFLOW -2
#defi ne GUARD -99
#define MAXLEN 255 // 线性表(顺序表)的最大长度
#defi ne LIST_MAX_SIZE 50 // 链表的最大长度
//函数结果的类型
typedef int Status;
typedef int ElemType;
typedef struct {
ElemType *elem;
int len gth;
int listsize;
} SqList;
typedef struct List {
int elem[MAXLEN];
int len gth;
} List;
typedef un sig ned char SStri ng[MAXLEN + 1];
typedef int ElemType;
typedef struct LNode {
int data;
struct LNode *n ext;
}LNode, *Li nkList;
// pllist.cpp
void In itList(List L); //* 此函数用于初始化一个保持增序的线性表 L
void In itList0(List L); //* 此函数用于初始化一个线性表 L
void prin tList(List L);
void createTwoLists(List La, List Lb);
void MergeList(List La, List Lb, List Lc); //*TBD1* 将 Lb 归并到 La 表,形成新表
Lc
void Union (List La, List Lb); 〃*TBD2* 线性La和Lb分别表示两个集合,求新集合
La= La U Lb ( U并”操作)
void ReverseList(List L); 〃*TBD3* 将线性表 L 逆转
void deleteall(List L, int x, int y); 〃*TBD4* 从一给定的顺序表 L中删除元素值在
x和y之间的所有元素(x= y)
// lottery.cpp
乙负责-初始化循环链表LL的容10 选 7)36
乙负责-初始化循环链表L
L的容
10 选 7)
36 选 7)
L所使用的存
甲负责-在屏幕上输出链表 乙负责-实现体育彩票( 甲负责-实现体育彩票( 甲负责-释放初始化链表 乙负责-实现主函数
// Lin kedList.cpp
TOC \o 1-5 \h \z Status CreateList_L(Li nkList L, i nt n); // 采用尾插法创建一个带头结点的长度为 n
的单链表L
Status CreateList_L_NoHead(Li nkList L, i nt n); // 采用尾插法创建一个无头结点的长
度为n的单链表L
void prin tList_L(L in kList L); // 输出带头结点的单链表 L
void prin tList_L_NoHead(Li nkList L); // 输出不带头结点的单链表 L
Status GetElem_L(L in kList L, int i, ElemType e);
Status List In sert_L(L in kList L, int i, ElemType e);
Status ListDelete_L(LinkList L, int i, ElemType e);
void MergeList_L(Li nkList La, Li nkList Lb, Li nkList Lc);
void deleteall no des(L in kList L, ElemType min, ElemType max);
void ChangeLinkList01J(LinkList L);
Status reorder5(L in kList L);
// pllist.cpp [ 例 2-2-12]
void deleteall_1(List *L, i nt x);
void deleteall_2(List *L, i nt x
文档评论(0)