1.思维导图
2.实现头删、清空顺序表、按位置插入、释放顺序表
1.头删
void del_head(seq_p S,datatype data)
{
if(S==NULL)
{
printf("入参为空");
return;
}
for (int i=0;i<S->len;i++)
{
S->data[i]=S->data[i+1];
}
S->len--;
}
2.清空顺序表
void clear(seq_p S,datatype data)
{
if(S==NULL)
{
printf("入参为空");
return;
}
for (int i=0;i<S->len;i++)
{
S->data[i]=NULL;
}
}
3.按位置插入
void insert_loc(seq_p S,datatype data)
{
if(S==NULL)
{
printf("入参为空");
return;
}
if(full_seq(S))
{
printf("表已满,不能插入");
return;
}
printf("请输入要插入的位置:");
int n;
scanf("%d",&n);
for (int i=S->len-1;i>=n;i--)
{
S->data[i+1]=S->data[i];
}
S->data[n]=data;
S->len++;
}
4.释放顺序表
void Seq_free(seq_p S,datatype data)
{
free(S);
S=NULL;
}