用c++写一个顺序表的插入和删除
时间: 2023-06-04 12:02:26 浏览: 61
好的,我可以为您提供有关顺序表的插入和删除的代码示例,请看下面:
顺序表的插入:
```c
#define MAXSIZE 100 // 顺序表的最大长度为 100
typedef struct
{
int data[MAXSIZE]; // 存储数据元素的数组
int length; // 顺序表的当前长度
} SeqList;
// 在顺序表的 i 位置插入元素 e
int insert(SeqList *L, int i, int e)
{
if (i < 1 || i > L->length + 1 || L->length == MAXSIZE) // 判断插入位置是否合法
return 0;
for (int j = L->length; j >= i; j--)
L->data[j] = L->data[j - 1]; // 从后往前挪动元素
L->data[i - 1] = e; // 将新元素插入到 i 位置
L->length++; // 顺序表长度加 1
return 1;
}
```
顺序表的删除:
```c
// 删除顺序表的第 i 个元素,并返回删除的元素
int delete(SeqList *L, int i)
{
if (i < 1 || i > L->length) // 判断删除位置是否合法
return 0;
int e = L->data[i - 1]; // 保存被删除的元素
for (int j = i; j < L->length; j++)
L->data[j - 1] = L->data[j]; // 从前往后挪动元素
L->length--; // 顺序表长度减 1
return e;
}
```
希望对您有所帮助!