Status?ListInsert(Linklist?*L,?int?i,?ElemType?e)
{ //在帶頭結點的單鏈線性表L中第i個位置之前插入元素e?
Linklist?p?=?*L;
int?j?=?0;
while(p?!=?NULL?&&?j?<?i?-?1)??//尋找第i?-?1個結點?
{
p?=?p->next;
j++;
}
//下面if語句中的判斷條件這么理解?
//為什么能表示i小于1或者大于表長加1,完全讀不懂,求大神指點。?
if(!p?||?j?>?i?-?1)??//i小于1或者大于表長加1?
return?ERROR;
Linklist?s?=(Linklist)malloc(sizeof(LNode));???//生產新結點
s->data?=?e;????//插入L中?
s->next?=?p->next;
p->next?=?s;
return?OK;
}
- 1 回答
- 0 關注
- 818 瀏覽
添加回答
舉報
0/150
提交
取消