单链表的删除操作
void InsList(LinkList L,int i,ElemType e)
{
LNode*pre,*e;
int k=0;
pre=L; //pre先指向表头指针L
while(pre!=NULL&&k<i-1) //pre不空时,就是没有找到结尾而且k的值又小于i-1,pre总是指向pre的next
{
pre=pre->next;
k=k+1;
} //目的是找到第i个节点的前驱节点,即i-1个节点
if(k!=i-1)
{
cout<<"删除节点的位置i不合理!";
return ERROR;
}
r=pre->next;
pre->next=pre->next->next;
s-next=pre-next;
free(r);
}