保证每个链表值只出现一次

题目描述

给定一个已排序的链表,删除所有重复的元素,使每个元素只出现一次。例如,

给定1 - > 1 - > 2,返回1 - > 2

给定1 - > 1 - > 2 - > 3 - > 3,返回1 - > 2 - > 3。

解题思路

遍历数组,遇到重复的就删除

代码示例

class Solution {
public:
    ListNode *deleteDuplicates(ListNode *head) {
        if (head == NULL) return NULL;
        ListNode *p = head;
        while (p) {
            while (p->next && p->val == p->next->val)
                p->next = p->next->next;
            p = p->next;
        }
        return head;
    }
};

猜你喜欢

转载自blog.csdn.net/summer00072/article/details/80974354