题目描述:
Given a sorted linked list, delete all duplicates such that each element appear only once.
Example 1:
Input: 1->1->2 Output: 1->2Example 2:
Input: 1->1->2->3->3 Output: 1->2->3
问题就是删除链表中冗余的元素,代码为:
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNode(int x) : val(x), next(NULL) {}
* };
*/
class Solution {
public:
ListNode* deleteDuplicates(ListNode* head) {
//声明指针时用*表示,当后面用到指针时,*q表示的是具体的值
ListNode* lnode = head;
while(lnode && lnode->next)
{
if(lnode->val == lnode->next->val)
lnode->next = lnode->next->next;
else
lnode = lnode->next;
}
return head;
}
};