1.若果知道链表头结点,一般都是通过遍历找到该结点p和前一个结点q后,断开p结点,连接q->next=p->next,释放free§;
2.没有给出头结点,但将p后一节点q中的数据赋值给p结点,再释放q结点,也相当于删除p结点
NODE* p;//为当前要删除结点
NODE* q = p->next;//p结点的后一节点
p->data = q->data;//数据赋值
p-next = q->next//断开q结点,后连接p与q的后一个结点
free(q);//释放q结点空间
本文详细介绍了两种链表中删除节点的方法:一是已知头结点时,通过遍历找到目标节点并调整前后节点指针;二是未知头结点时,通过数据复制和释放后续节点来实现。适用于链表操作的学习与实践。
1.若果知道链表头结点,一般都是通过遍历找到该结点p和前一个结点q后,断开p结点,连接q->next=p->next,释放free§;
2.没有给出头结点,但将p后一节点q中的数据赋值给p结点,再释放q结点,也相当于删除p结点
NODE* p;//为当前要删除结点
NODE* q = p->next;//p结点的后一节点
p->data = q->data;//数据赋值
p-next = q->next//断开q结点,后连接p与q的后一个结点
free(q);//释放q结点空间
1003
2549

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