顺序表基本运算的实现
基本运算—初始化线性表InitList(L)
① 需求
- 构造一个空的线性表L
② 方法
- 分配空间,并将length成员设置为0
③ 算法
void InitList(SqList *&L) //指针的引用
{
L=(SqList *)malloc(sizeof(SqList));
L->length=0;
}
SqList的结构体
#define MaxSize 50
typedef struct
{
ElemType data[MaxSize];
int length;
} SqList;
④ 时间复杂度
- O(1);
基本运算-销毁线性表DestroyList(L)
①需求
- 释放线性表L占用的内存空间
② 方法
- 调用free函数
③ 算法
void DestroyList(SqList *&L)
{
free(L);
}
④时间复杂度
- O(1)
基本运算-判定是否为空表ListEmpty(L)
① 需求
- 该运算返回一个值表示L是否为空表。若
L为空表,则返回true,否则返回false
② 算法
bool ListEmpty(SqList *L)
{
return(L->length