82. Remove Duplicates from Sorted List II
Leetcode
題目
Input: head = [1,2,3,3,4,4,5]
Output: [1,2,5]Input: head = [1,1,1,2,3]
Output: [2,3]解答
var deleteDuplicates = function(head) {
let dummy = new ListNode(0);
dummy.next = head;
let lastNode = dummy;
let isSame = false;
while(head) {
// 如果 next === null,會跑下面的 else,把 lastNode -> null
if(head.next?.val === head.val) {
// 刪除下一個重複的數
isSame = true;
head.next = head.next.next;
} else {
if(isSame) {
// 將所有重複的數都略過
lastNode.next = head.next;
isSame = false;
} else {
// 之前沒有刪除過重複的數,lastNode 跟 head 一樣都往前一步
lastNode = head;
}
head = head.next;
}
}
return dummy.next;
};測資
Last updated

