1 //函数结果状态代码 2 #define TRUE 1 3 #define FALSE 0 4 #define OK 1 5 #define ERROR 0 6 #define INFEASIBLE -1 //"不可能的" 7 #define OVERFLOW -2//"溢出,扩展出界" 8 9 typedef int Status;//Status是函数的类型,其值是函数结果状态代码 10 typedef char ElemType;
线性表的基本操作函数:
1 初始化: InitList(&L) 2 销毁: DestroyList(&L) 3 清空: ClearList(&L) 4 (涉及对线性表的修改,所以传入的是线性表的地址:&L) 5 6 判空: ListEmpty(L) 7 长度: ListLength(L) 8 获取元素: GetElem(L, i, &e元素判定函数) i:下标, &e:用e返回第i个元素的值 9 定位元素下标: LocateElem(L,e,compare()) e:要查找元素, compare():元素判定函数,返回第一个满足条件的元素下标,若无这样的元素,则返回0 10 11 求元素的前驱: PriorElem(L,cur_e,&pre_e) cur_e:当前元素 12 求元素的后继: NextElem(L,cur_e,&next_e) cur_e:当前元素 13 14 插入元素: ListInsert(&L, i, e) i:插入位置, e:要插入的元素(插入后线性表长度加1) 15 删除元素: ListDelete(&L, i, &e) i:被删除元素的下标,并用e返回其值(删除后线性表长度减1) 16 17 遍历并执行某操作: ListTravelse(&L, visited()) 依次对线性表中的每个元素执行visited()方法