考研学习—数据结构—顺序表
作者:
sshixx
,
2022-07-25 13:30:05
,
所有人可见
,
阅读 213
#include <iostream>
using namespace std;
#define Maxsize 100
typedef struct
{
int date[Maxsize];
int length;
}Sqlist;
void InitList(Sqlist &L)
{
L.length = 0;
}
int Length(Sqlist L)
{
int length;
for(int i = 0; i < Maxsize; i ++)
if(!L.date[i])
length ++;
return length;
}
int LocateElem(Sqlist L, int e)
{
for(int i = 0; i < L.length; i ++)
if(L.date[i] == e)
return i;
return false;
}
int GetElem(Sqlist L, int i)
{
if(L.length == 0||i < 0 || i > L.length) return false;
return L.date[i - 1];
}
bool InsertElem(Sqlist &L, int i, int e)
{
if(L.length == Maxsize) return false;
if(i < 1 || i > L.length + 1) return false;
for(int j = L.length; j >= i; j --)
L.date[j] = L.date[j - 1];
L.date[i - 1] = e;
L.length ++;
return true;
}
int DeleteList(Sqlist &L, int i)
{
int x;
if(i < 1 || i > L.length) return false;
x = L.date[i -1];
for(int j = i; j < L.length; j ++)
L.date[j - 1] = L.date[j];
L.length--;
return x;
}
bool Empty(Sqlist L)
{
if (L.length == 0) return true;
return false;
}
void OutputList(Sqlist L)
{
for(int i = 0; i < L.length; i ++)
cout << L.date[i] << " ";
}
int main()
{
Sqlist L;
InitList(L);
for(int i = 0; i < 10; i ++)
InsertElem(L, i + 1, i);
InsertElem(L, 2, 3);
OutputList(L);
return 0;
}