一,題目描述
在乙個排序的鍊錶中,存在重複的結點,請刪除該鍊錶中重複的結點,重複的結點不保留,返回煉表頭指標。
例如,鍊錶1->2->3->3->4->4->5 處理後為 1->2->5
二,解決思路
1,建立乙個帶傀儡節點的新鍊錶,用來儲存原有鍊錶中不重複的節點
2,遍歷給定鍊錶將不重複的節點尾插入新鍊錶
3,遍歷分為雙重迴圈,外層迴圈整體迴圈,內部迴圈只是為了跳過連續幾個相等的元素
三,**實現
public listnode deleteduplication
(listnode phead)
// 上面的 while 迴圈結束, 此時 cur 就指向這片相同元素區間的最後乙個位置
// 再多走一步就意味著跳過了整個相同元素的區間
cur = cur.next;
}else
}return newhead.next;
}
刪除鍊錶中重複的結點
題目描述 在乙個排序的鍊錶中,存在重複的結點,請刪除該鍊錶中重複的結點,重複的結點不保留,返回煉表頭指標。例如,鍊錶1 2 3 3 4 4 5 處理後為 1 2 5。刪除鍊錶中重複的結點 author 過路的守望 public class duplicationnode 新建乙個節點指向頭結點 li...
刪除鍊錶中重複的結點
在乙個排序的鍊錶中,存在重複的結點,請刪除該鍊錶中重複的結點,重複的結點不保留,返回煉表頭指標。例如,鍊錶1 2 3 3 4 4 5 處理後為 1 2 5 解法一 遞迴 public class listnode public class solution if phead.next.val phe...
刪除鍊錶中重複的結點
在乙個排序的鍊錶中,存在重複的結點,請刪除該鍊錶中重複的結點,重複的結點不保留,返回煉表頭指標。例如,鍊錶1 2 3 3 4 4 5 處理後為 1 2 5 題目分析 刪除鍊錶中的結點要比較當前結點是否與前面結點和後面結點相同,只有兩個都不同的結點才保留。用pre儲存前乙個節點,cur儲存當前結點,c...