天啊,都乱了
if (i<1||i>L->length+1) return ERROR;
q=&(L->elem[i-1]);
for(p=&L->elem[L->length-1];p>=q;--p)
*(p+1)=*p;
*q=e;
++L->length;
return OK;
}/*ListInsert Before i */
看这个代码,感觉他就是把数组的地址copy了一下,实在没明白这也叫线性表
线性表和链表到底有什么区别,坐了半个多小时实在想不出来到底要怎么写
还有length=0;elem[-1]到底是什么东西
帮忙帮忙,说一下区别,还有上面那个问题
status ListInsert(List *L,int i,ElemType e) {
struct STU *p,*q;
if (i<1||i>L->length+1) return ERROR;
q=&(L->elem[i-1]);
for(p=&L->elem[L->length-1];p>=q;--p)
*(p+1)=*p;
*q=e;
++L->length;
return OK;
}/*ListInsert Before i */