顺序表的常用方法
typedef struct LNode {
int data[N];
int length;
}LNode;
//初始化操作
bool InitList(int n, LNode& L) {
L.length = n;
if (n<0 || n>N) {
printf_s("输入数量错误");
return false;
}
for (int i = 0; i < n; i++) {
scanf_s("%d", &L.data[i]);
}
printf_s("初始化成功\n");
return true;
}
//按位查询操作
int SeekList(int i, LNode& L) {
if (i<0 || i>L.length) {
printf_s("输入位数错误\n");
return false;
}
return L.data[i-1];
}
//按值查找
int SeekList1(int i, LNode& L) {
int j;
for (j = 0; j < N; j++) {
if (L.data[j] == i) {
return j+1;
}
}
if (j >= L.length) {
printf_s("没有此数据");
return 0;
}
}
//插入操作
bool ListInsert(LNode &L, int i,int e){
for (int j = L.length; j<i; j--) {
L.data[j] = L.data[j - 1];
}
return true;
}
bool ListDelete(LNode& L, int i) {
for (int j = i - 1; j < L.length; j++) {
L.data[j - 1] = L.data[j];
}
return true;
}