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

2021-09-25 08:39:38 字數 761 閱讀 9291

題目

code

方法1:利用stl容器set來去重,之後將值賦回給原鍊錶

踩坑:最後乙個節點的邊界注意,否則會多鏈結乙個原鍊錶後面的節點![在這裡插入描述](

/**

* definition for singly-linked list.

* struct listnode

* };

*/class solution

int i = 0;

int size = st.size();

cout

head->val = *it;

++it,++i;

if(i != size)

}head -> next = null;

return res;}};

方法2:時間和空間都有優化,沒有開闢o(n)的額外空間。因為已經排序了的,所以遍歷相鄰的節點值是否相同,相同則跳過即可,不同就next

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指標,以便它跳過下乙個...