通过建立map,经无序链表中重复元素移除
ListNode* removeDuplicate(ListNode* L)
{
ListNode* dummy = new ListNode(-1);
dummy->next = L;
ListNode* pre = dummy;
unordered_map<int, int> M;
while(L)
{
if(M.find(L->val) != M.end())
{
pre->next = L->next;
L = pre->next;
}
else
{
M[L->val]++;
pre = pre->next;
L = L->next;
}
}
printlist(dummy->next);
return dummy->next;
}