C语言顺序表的基本操作(附带注释)
时间: 2023-06-07 10:08:27 浏览: 59
好的,关于C语言顺序表的基本操作,以下是几个常用的操作及对应的注释:
1. 初始化顺序表
void initList(SqList *L) {
//将顺序表L初始化为空表
L->length = 0;
}
2. 在顺序表中查找元素
int locateElem(SqList L, ElemType e) {
//在顺序表L中查找第一个值为e的元素并返回其位置,若不存在则返回0
for(int i = 0; i < L.length; i++) {
if(L.data[i] == e) {
return i+1;
}
}
return 0;
}
3. 在顺序表中插入元素
int listInsert(SqList *L, int i, ElemType e) {
//在顺序表L的第i个位置插入新元素e,若i不合法则返回0
if(i < 1 || i > L->length + 1) {
return 0;
}
if(L->length >= LIST_SIZE) {
return 0;
}
for(int j = L->length; j >= i; j--) {
L->data[j] = L->data[j-1];
}
L->data[i-1] = e;
L->length++;
return 1;
}
4. 在顺序表中删除元素
int listDelete(SqList *L, int i, ElemType *e) {
//删除顺序表L中第i个位置的元素,并用e返回其值,若i不合法则返回0
if(i < 1 || i > L->length) {
return 0;
}
*e = L->data[i-1];
for(int j = i; j < L->length; j++) {
L->data[j-1] = L->data[j];
}
L->length--;
return 1;
}
希望能帮到您!