leetcode 67:remove-duplicates-from-sorted-list

题目描述

删除给出链表中的重复元素(链表中元素从小到大有序),使链表中的所有元素都只出现一次
例如:
给出的链表为1→1→21\to1\to2112,返回1→21 \to 212.
给出的链表为1→1→2→3→31\to1\to 2 \to 3 \to 311233,返回1→2→31\to 2 \to 3123.
题目分析:
链表中元素是有序的,因此如果有重复的元素的话,元素肯定相邻
代码如下:
 1 ListNode* deleteDuplicates(ListNode* head) {
 2         ListNode* cur = head;
 3         while(cur != nullptr)
 4         {
 5             while(cur->next != nullptr && cur->val == cur->next->val)
 6                 cur->next = cur->next->next;
 7             cur = cur->next;
 8         }
 9         return head;
10     }

 

posted @ 2020-08-10 10:51  请叫我小小兽  阅读(141)  评论(0编辑  收藏  举报