地址 https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list/
给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。 示例 1: 输入: 1->1->2 输出: 1->2 示例 2: 输入: 1->1->2->3->3 输出: 1->2->3
由于是 排序链表 那么只要比较当前和下一个元素的值比较 决定删除与否
同样 还是注意边界问题
code
/** * 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) { ListNode* p = head; while(p != NULL){ if(p->next!=NULL&& p->val == p->next->val){ p->next = p->next->next; } else{ p=p->next; } } return head; } };