顺序表插入操作C语言实现
顺序表的插入操作写得还挺清楚的,逻辑比较规整,适合刚接触数据结构的同学啃一啃。用的是 C 语言写法,像Insert_SqList
这种插入函数,基本套路就是先判断位置是否合法,再整体元素后移,插进去,别忘了更新长度。嗯,虽然代码里有些符号显示有点问题,但思路还算扎实,照着改一改就能跑起来。
顺序表的基本操作之一就是插入,用 C 语言实现的时候,像Insert_SqList
函数这样就挺标准:
Status Insert_SqList(Sqlist *L, int i, ElemType e) {
int j;
if (i < 1> L->length + 1) return ERROR;
if (L->length >= MAX_SIZE) {
printf("线性表溢出!\n");
return ERROR;
}
for (j = L->length - 1; j >= i - 1; --j)
L->Elem_array[j + 1] = L->Elem_array[j];
L->Elem_array[i - 1] = e;
L->length++;
return OK;
}
操作顺序是:先判断插入位置是否合法,再看容量够不够,才是移动元素和赋值。注意i - 1
是插入位置的数组下标,别搞错了。写业务逻辑的时候就可以直接套这个结构。
想更系统地理解顺序表或者试试别的语言实现?下面这些文章还蛮有的:
如果你是初学者,建议先从 C 语言的顺序表看起,配合链表对比着理解更清楚;要是你更熟 Java,也可以直接跳到对应的实现方式。
6.17MB
文件大小:
评论区