LeetCode-203-移除連結串列元素
阿新 • • 發佈:2021-01-24
刪除連結串列中等於給定值 val 的所有節點。
示例:
輸入: 1->2->6->3->4->5->6, val = 6
輸出: 1->2->3->4->5
解題思路
用一個假的頭節點,方便寫程式碼
ListNode dummyHead = new ListNode(); dummyHead.next = head;
用一個節點指向假的頭節點,然後當該節點的next
不為空時,判斷next.val
是否為所給值
如果是則斷開next
cur.next = cur.next.next
cur = cur.next
程式碼
class Solution {
public ListNode removeElements(ListNode head, int val) {
ListNode dummyHead = new ListNode();
dummyHead.next = head;
ListNode cur = dummyHead;
while (cur.next != null) {
if (cur.next.val == val) {
cur. next = cur.next.next;
} else {
cur = cur.next;
}
}
return dummyHead.next;
}
}