您的位置:首页 > 其它

Leetcode Problem.83—Remove Duplicates from Sorted List

2015-06-03 15:23 211 查看
Given a sorted linked list, delete all duplicates such that each element appear only once.

For example,

Given
1->1->2
, return
1->2
.

Given
1->1->2->3->3
, return
1->2->3
.

My C++ solution!

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode(int x) : val(x), next(NULL) {}
 * };
 */


ListNode* deleteDuplicates(ListNode* head) 
{
      vector<int> temp;
	  if(head==NULL)
		  return head;
	  ListNode *p=head;
	  ListNode *q;
	  temp.push_back(p->val);
	  while(p->next)
	  {
		  if(find(temp.begin(),temp.end(),p->next->val)!=temp.end())
		  {
			 q =p->next->next;
			 p->next=q;
		  }
		  else
		  {
			  temp.push_back(p->next->val);
			  p=p->next;
		  }
	  }
	  return head;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: