LeetCode083 Remove Duplicates from Sorted List

Given a sorted linked list, delete all duplicates such that each element appear only once.

Example 1:

Input: 1->1->2
Output: 1->2

Example 2:

Input: 1->1->2->3->3
Output: 1->2->3

<思路>如果链表为空,或者只有一个节点,直接返回。如果链表有下一个节点,比较val,相同则将next越过,不同则继续向下查找。

# Definition for singly-linked list.
# class ListNode(object):
#     def __init__(self, x):
#         self.val = x
#         self.next = None

class Solution(object):
    def deleteDuplicates(self, head):
        """
        :type head: ListNode
        :rtype: ListNode
        """
        if not head:
            return head
        
        rhead = head
        while head.next:
            if head.val==head.next.val:
                head.next = head.next.next
            else:  
                head = head.next
        return rhead

猜你喜欢

转载自blog.csdn.net/AIpush/article/details/82353581