刪除排序鍊錶中的重複元素

2021-07-29 19:29:31 字數 621 閱讀 4333

1.問題描述

給定乙個排序鍊錶,刪除所有重複的元素每個元素只留下乙個。 樣例

給出1->1->2->null,返回1->2->null

給出1->1->2->3->3->null,返回1->2->3->null

2.解題思路

因為鍊錶是排好序的,所以相同的元素是挨著的,所以只需要判斷相鄰兩個節點值的大小,相同則用下乙個節點覆蓋,不同則移動到下乙個節點。

3.**實現

/*** definition of listnode

* class listnode

* }*/

class solution

listnode*p,*q;

p=head;

q=head->next;

while(q!=null)

else

q=p->next;

}return head;}};

4.感想

注意最後的返回操作,不要忘記判空。

刪除排序鍊錶中重複元素

示例 1 輸入 1 2 3 3 4 4 5 輸出 1 2 5 示例 2 輸入 1 1 1 2 3 輸出 2 3 照例使用三個指標來 struct listnode deleteduplicates struct listnode head else 沒有重複的就正常移動 示例 1 輸入 1 1 2 ...

刪除排序鍊錶中的重複元素

給定乙個排序鍊錶,刪除所有重複的元素每個元素只留下乙個。樣例 給出 1 1 2 null,返回 1 2 null 給出 1 1 2 3 3 null,返回 1 2 3 null 加乙個頭結點 鍊錶有序,找到不相等的時候,刪除中間結點 兩兩比較是否相同進行刪除 definition for listn...

刪除排序鍊錶中的重複元素

題目 刪除排序鍊錶中的重複元素。給定乙個排序鍊錶,刪除所有重複的元素每個元素只留下乙個。樣例 給出1 1 2 null,返回1 2 null 給出1 1 2 3 3 null,返回1 2 3 null 思路 該題所給的鍊錶是有序的鍊錶,這大大降低了該題的難度,所以只要再定義乙個指標p,固定head,...