顺序表的删除:
bool DeleteElem (List&L,int n,int &e)//在n位置删除这个元素,并把这个元素的值传给e,要加引用(&)因为要修改变量e
{
if(n<1||n>L.length) //不能删除一个顺序表之外的元素吧
{
return false;
}
if(L.length==0)//顺序表为空 ,没有删除的东西
{
return false;
}
e=L.data[n-1];
for(int j =n-1;j<L.length-1;j++)//删除此位置的元素后,此位置后的第一个元素就成为此位置的新元素。
{
L.data[j]=L.data[j+1];//一个一个往前挪动元素
}
L.length--;
return true;
}
顺序表的遍历:
bool PrintElem(List&L)
{
int i;
for(i=0;i<L.length;i++)
{
printf("%d",L.data[i]);
}
return true;
}