下列算法完成在顺序表 SeqL 的第 i 个位置插入元素 x,正常插入返回 1,否则返回 0 或-1,
int seq_ins(SeqList *SeqL,int i, DataType x)
{
int j;
if ( SeqL->len ==maxsize ) /*表满*/
{
printf("the list is full\n");
return 0;
}
else if (i<1||i> SeqL->len+1) /*位置不对*/
{
printf("the position is invalid\n ");
return -1;
}
else{ /*正常插入*/
for (j=SeqL->len;j>=i;j--)
SeqL->data[j+1]= SeqL->data[j]; /*元素后移*/
SeqL->data[i]=x; /*插入元素*/
(SeqL->len)++; /*表长加 1*/
return 1;
}
}