题解 | #删除有序链表中重复的元素-I#
删除有序链表中重复的元素-II
http://www.nowcoder.com/practice/71cef9f8b5564579bf7ed93fbe0b2024
思路
题目中明确说了是升序链表,则可以使用multiset将值进行存储,并判断某个元素是否重复出现,重组链表
class Solution {
public:
/**
*
* @param head ListNode类
* @return ListNode类
*/
ListNode* deleteDuplicates(ListNode* head)
{
multiset<int> numSet;
while(head)
{
numSet.insert(head->val);
head = head->next;
}
ListNode* res = new ListNode(0);
auto nHead = res;
for(auto i : numSet)
{
if(numSet.count(i)==1)
{
res->next = new ListNode(i);
res = res->next;
}
}
return nHead->next;
}
};