#include<iostream>
const int InitSize = 100; //目标空间大小
const int MaxSize = 100; //最大空间大小
typedef int Elemtype;
typedef struct {
Elemtype *data;
int length;
}SqList;
//插入
bool ListInsert(SqList &L, int i, Elemtype e) {
if (i<1 || i>L.length + 1) //判断i的值是否有效
return false;
if (L.length >= MaxSize) //存储空间已满
return false;
for (int j = L.length; j >= i; j--) //将第i个元素之后的元素后移
L.data[j] = L.data[j - 1];
L.data[i - 1] = e;
L.length++;
return true;
}
//删除
bool ListDelete(SqList &L, int i, Elemtype &e) {
if (i<1 || i>L.length) //判断i的值是否有效
return false;
e = L.data[i - 1]; //将第i个元素赋值给e
for (int j = i; j < L.length; j++) //第i个元素后的元素前移
L.data[j - 1] = L.data[j];
L.length--;
return true;
}
//输出
void printList(SqList &L) {
for (int i = 0; i < L.length; i++) {
printf("%4d", L.data[i]);
}
printf(&
线性表的创建与操作
最新推荐文章于 2022-12-01 22:27:31 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)