思路
1.判断这个位置是否合理
2.更改指针指向
代码
/*初始条件:顺序线性表L已经存在,1<=i<=ListLength(L)*/
/*操作结果:在L中第i个位置之前插入新的数据元素e,L的长度加1 */
Status ListInsert(LinkList *L,int i,ElemType e)
{
int j;
LinkList p,s;
p=*L;
j=1;
while(p&&j<i) //寻找第i个结点
{
p=p->next;
j++;
}
if (!p||j>i)
return ERROR;
s=(LinkList)malloc(sizeof(Node));//生成新结点
s->date=e;
s->next=p->next;
p->next=s;
return OK;
}
本文探讨了单链表中插入元素的逻辑,包括检查插入位置的有效性及调整链表指针方向,配合具体代码实现进行详细阐述。
2347

被折叠的 条评论
为什么被折叠?



