链表4

1、题目:

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

2、解答:题目的意思是 删除排序链表中的重复元素


3、C++代码

class Solution {
public:
    ListNode* deleteDuplicates(ListNode* head) {
     ListNode* curr = head;
        while(curr)
        {
        if(curr->next&&curr->next->val == curr->val)
        {
            ListNode* temp = curr->next;
            curr->next = curr->next->next;
            delete temp;
        }
            else curr = curr->next;
        }
        return head;
  }
};

python 代码

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


猜你喜欢

转载自blog.csdn.net/qq_31307013/article/details/80193302
今日推荐