給定乙個排序鍊錶,刪除所有含有重複數字的節點,只保留原始鍊錶中 沒有重複出現 的數字。自己的思路很簡單,那就是雙指標法,pre指向下乙個最後乙個不重複的節點。而cur去搜尋重複節點,當找到重複節點的最後乙個的時候,就斷開中間重複節點的鍊錶。示例 1:
輸入: 1->2->3->3->4->4->5
輸出: 1->2->5
示例 2:
輸入: 1->1->1->2->3
輸出: 2->3
但是乙個特例,那就是在自己的解法中,判斷條件不會刪除這一小段重複的鍊錶。
所以還需要再加上一段判斷條件,那就是if(cur.next==null)
class solution
listnode dummy = new listnode();
dummy.next = head;
listnode pre = dummy;
listnode cur = pre.next;
while (cur != null && cur.next != null)
} else
}} else
}return dummy.next;
}}
82 刪除排序鍊錶中重複元素
題目 給定乙個排序鍊錶,刪除所有含有重複數字的節點,只保留原始鍊錶中 沒有重複出現 的數字。示例 1 輸入 1 2 3 3 4 4 5 輸出 1 2 5示例 2 輸入 1 1 1 2 3 輸出 2 3思路 採用三個指標。slow指標指向第乙個重複節點,fast指向最後乙個重複節點,temp指向第乙個...
82 刪除排序鍊錶中的重複元素 II
給定乙個排序鍊錶,刪除所有含有重複數字的節點,只保留原始鍊錶中 沒有重複出現 的數字。示例 1 輸入 1 2 3 3 4 4 5 輸出 1 2 5 示例 2 輸入 1 1 1 2 3 輸出 2 3 題解 建立乙個頭結點,這樣可以保證第乙個結點能簡單的移除掉 listnode l 為操作結點的前一結點...
82 刪除排序鍊錶中的重複元素 II
細節分析 1.按照慣例,設定乙個空的頭節點,用於返回,接著用乙個指標儲存結果 res res head listnode none return res head 2.再設定乙個空的頭節點指標,用於遍歷鍊錶 point listnode none point.next head 3.所以 res用於...