203. 移除链表元素
删除链表中等于给定值 val 的所有节点。
示例:
输入: 1->2->6->3->4->5->6, val = 6
输出: 1->2->3->4->5
解决思路:
-
定义两个节点,一个prev来表示删除节点的先驱,cur表示要删除的节点;
-
在删除的时候,先考虑头节点后面的节点,如果先把头节点删除的话,头节点后面的那个如果还是要删除的,就会删不掉;
-
遍历完链表,把需要删除的节点都删除掉
prev.next = cur.next;
;
-
最后考虑头节点是否是要删除的。
Code:
public ListNode removeElements(ListNode head