已解决
LeetCode | 203. 移除链表元素
来自网友在路上 186886提问 提问时间:2023-11-04 17:00:30阅读次数: 86
最佳答案 问答题库868位专家为你答疑解惑
LeetCode | 203. 移除链表元素
OJ链接
-
这里有两个思路我接下来看
-
当cur不等于6就一直找,找到了
6
就删除,但是能不能直接删除?不能,直接free了就找不到下一个了 -
这个时候我们就要定义
next
指针,和prev
指针,next
指针保存cur
的下一个地址,prev
保存cur
的前一个地址
代码如下:
struct ListNode* removeElements(struct ListNode* head, int val) {struct ListNode* prev = NULL;struct ListNode* cur=head;while(cur != NULL){if(cur->val == val){struct ListNode* next = cur->next;free(cur);if(prev)prev->next = next;elsehead = next;cur = next;}else{prev = cur;cur = cur->next;}}return head;
}
查看全文
99%的人还看了
相似问题
猜你感兴趣
版权申明
本文"LeetCode | 203. 移除链表元素":http://eshow365.cn/6-31993-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!
- 上一篇: 多个PDF发票合并实现一张A4纸打印2张电子/数电发票功能
- 下一篇: 机场运行关键指标计算规则