码迷,mamicode.com
首页 > 编程语言 > 详细

leetcode 82 删除排序列表中重复元素

时间:2021-02-18 12:53:10      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:while   bsp   turn   pre   rgb   重复元素   重复   lse   let   

没啥太难的思路,代码如下:

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode() : val(0), next(nullptr) {}
 *     ListNode(int x) : val(x), next(nullptr) {}
 *     ListNode(int x, ListNode *next) : val(x), next(next) {}
 * };
 */
class Solution 
{
public:
    ListNode* deleteDuplicates(ListNode* head) 
    {
        ListNode* temp1 = new ListNode(0,head);
        ListNode* temp = temp1;
        ListNode* temp2 = head;
        if(!head || !head->next)
        return head;
        while(temp2 && temp2->next)
        {
            if(temp2->val == temp2->next->val)
            {
                while(temp2->next && temp2->val == temp2->next->val)
                temp2 = temp2->next;
                temp2 = temp2->next;
                temp1->next = temp2;
            }
            else
            {
                temp1 = temp2;
                temp2 = temp2->next;
            }          
        }
        return temp->next;
    }
};

 

leetcode 82 删除排序列表中重复元素

标签:while   bsp   turn   pre   rgb   重复元素   重复   lse   let   

原文地址:https://www.cnblogs.com/zhaohhhh/p/14403716.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!