小弟刚学链表,删除节点
void delLink(LinkList *list ,LinkList q){
LinkList r;
if(q==list){
*list=q->next;
free(q);
}
else{
for(r=*list;r->next!=q;rr=r->next){
/*遍历链表,找到q的前驱节点的指针*/
if(r->next!=NULL){
r->next=q->next;
free(q);
}
}
}
红色这一行费解,原书上这段代码是q所指向的前驱结点的指针是未知的,
next的意思不是下一个吗?
网上找前驱是prior,后继是next,
我看的是链表的基础学习,还没接触双向链表