ypedef int DataType;
struct SeqList
{int MAXNUM;
int n;
DataType *element;
};
typedef struct SeqList *PSeqList;
PSeqList createNullList_seq (int m) /*创建空顺序表*/
{
PSeqList palist=(PSeqList)malloc(sizeof(struct SeqList));
if(palist!=NULL)
{
palist->element=(DataType*)malloc(sizeof(DataType)*m);
if(palist->element)
{
palist->MAXNUM=m;
palist->n=0;
return(palist);
}
else free(palist);
}
printf("out of sapce!!\n");
return NULL;
}
int isNullList_seq(PSeqList palist)
{
return(palist->n==0);
}
int insert_seq(PSeqList palist,int p,DataType x) /*顺序表的插入*/
{
int q;
if(palist->n>=palist->MAXNUM)
{
printf("Overflow!\n");
return(0);
}
if(isNullList_seq(palist))
{
palist->element[0]=x;
palist->n=1;
return(1);
}
if(p<0||p>palist->n)
{
printf("not exist!\n");
return(0);
}
for(q=palist->n-1;q>=p;q--)
palist->element[q+1]=palist->element[q];
palist->element[p]=x;
palist->n=palist->n+1;
return(1);
}
int delete_seq(PSeqList palist, int p) /*顺序表的删除*/
{
int q;
if(p<0||p>palist->n-1)
{
printf("not exist!\n");
return(0);
}
for(q=p;q<palist->n-1;q++)
palist->element[q]=palist->element[q+1];
palist->n=palist->n-1;
return(1);
}