目錄你的鼓勵也是我創作的動力
給定乙個排序鍊錶,刪除所有重複的元素,使得每個元素只出現一次。此題跟leetcode-26-刪除排序陣列中的重複項解法很類似,只不過這次是鍊錶;回顧一下上乙個題的解法示例 1:
輸入: 1->1->2
輸出: 1->2
示例 2:
輸入: 1->1->2->3->3
輸出: 1->2->3
快慢指標的妙用,利用兩個指標i, j,初始化值為0和1,當兩個指標對應的值相等時,指標j+1,繼續執行迴圈;而當兩個指標對應的值不相等時,將指標i+1,並將指標j對用的值賦值給指標i,然後指標j+1,繼續向下執行迴圈,直到迴圈結束。細節需要注意:最後慢指標是最後乙個資料的索引,題目要求是返回陣列的長度,所以需要 +1返回;
listnode left = head; // 慢指標
listnode right = head.next; // 快指標
同樣的,判斷兩個值是否相等,即可,**很簡單
public listnode deleteduplicates(listnode head)
listnode left = head;
listnode right = head.next;
while (right != null) else
right = right.next;
}return head;
}
打賞位址
LeetCode 83 刪除排序鍊錶中的重複元素
給定乙個排序鍊錶,刪除所有重複的元素,使得每個元素只出現一次。definition for singly linked list.struct listnode struct listnode deleteducurrent nodelicates struct listnode head 示例 1...
LeetCode 83 刪除排序鍊錶中的重複元素
題目描述 給定乙個排序鍊錶,刪除所有重複的元素,使得每個元素只出現一次。示例 輸入 1 1 2 輸出 1 2輸入 1 1 2 3 3 輸出 1 2 3解題思路 直接判斷下個節點的val是否與當前節點相同,相同則刪除,不同則將向後移。ac definition for singly linked li...
leetcode83 刪除排序鍊錶中的重複元素
描述 給定乙個排序鍊錶,刪除所有重複的元素,使得每個元素只出現一次。示例 1 輸入 1 1 2輸出 1 2示例 2 輸入 1 1 2 3 3輸出 1 2 3解答 1.直接求解 通過將結點的值與它之後的結點進行比較來確定它是否為重複結點。如果它是重複的,我們更改當前結點的next指標,以便它跳過下乙個...