题目:删除排序链表中的重复元素
问题描述:给定一个排序链表,删除所有重复的元素每个元素只留下一个。
思路:遍历链表,如果一个元素的值跟下一个元素相等,删除一个。
代码:
class Solution {
public:
/**
* @param head: The first node of linked list.
* @return: head node
*/
ListNode *deleteDuplicates(ListNode *head) {
// write your code here
if(head!=NULL){
int t;
ListNode *dummy=head;
t=dummy->val;
while(dummy->next!=NULL){
if(t==dummy->next->val){
ListNode *temp=dummy->next;
dummy->next=dummy->next->next;
delete temp;
}
else{
dummy=dummy->next;
t=dummy->val;
}
}
}
return head;
}
};
感想:这道题还是挺简单的,思路很容易想出来,但是刚开始编代码的时候出现了指针乱码的错误,还是要思路更清晰才能AC代码啊。