/* 删除在L中第i个数据元素 */ Status ListDelete(StaticLinkList L, int i) { int j, k; if (i < 1 || i > ListLength(L)) return ERROR; k = MAXSIZE - 1; for (j = 1; j <= i - 1; j++) k = L[k].cur; j = L[k].cur; L[k].cur = L[j].cur; Free_SSL(L, j); return OK; }
Status ListInsert(StaticLinkLisk L, int i) { //删除链表L中第i个元素 int j, k; if(i<1 || i>ListLength(L)) { return ERROR; } k = MAXSIZE - 1; //最后一个元素 for(j=1; j<=i-1; j++) { k = L[k].cur; //得到第i-1个元素的cur赋值为k } j = L[k].cur //得到第i个元素的cur 赋值为j L[k].cur = L[j].cur; //跳过第i个元素 Free_SSL(L, j); return OK; }