1.题目
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
.
2.解决方案
class Solution {
public:
ListNode *deleteDuplicates(ListNode *head) {
if(!head)
return NULL;
ListNode* firstNode = head;
ListNode* currentNode = head;
ListNode* nextNode = head;
while(currentNode->next){
if(currentNode->val == currentNode->next->val){
if(currentNode->next->next){
currentNode->next = currentNode->next->next;
}else{
currentNode->next = NULL;
}
}else{
currentNode = currentNode->next;
}
}
return head;
}
};
思路:比较简单的list删除操作。
http://www.waitingfy.com/archives/1600