203. Remove Linked List Elements
Leetcode
https://leetcode.com/problems/remove-linked-list-elements/
題目
Given the head of a linked list and an integer val, remove all the nodes of the linked list that has Node.val == val, and return the new head.
Example 1:

Input: head = [1,2,6,3,4,5,6], val = 6
Output: [1,2,3,4,5]Example 2:
Input: head = [], val = 1
Output: []Example 3:
Input: head = [7,7,7,7], val = 7
Output: []解答
方法一
var removeElements = function(head, val) {
const dummy = new ListNode(-1);
dummy.next = head;
let lastNode = dummy;
while(lastNode) {
// 只要下一個等於 val,就一直把 lastNode 指到下下個 node
while(lastNode.next?.val === val) {
lastNode.next = lastNode.next?.next;
}
lastNode = lastNode.next;
}
return dummy.next;
};Runtime: 88 ms, faster than 91.34% of JavaScript online submissions for Remove Linked List Elements.
Memory Usage: 43.4 MB, less than 63.33% of JavaScript online submissions for Remove Linked List Elements.
Last updated
Was this helpful?