zoukankan      html  css  js  c++  java
  • Leetcode练习(Python):链表类:第83题:删除排序链表中的重复元素:给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。

    题目:
    删除排序链表中的重复元素:给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。
    思路:
    双指针法。
    程序1:暴力法,超时了
    # Definition for singly-linked list.
    # class ListNode:
    #     def __init__(self, x):
    #         self.val = x
    #         self.next = None
     
    class Solution:
        def deleteDuplicates(self, head: ListNode) -> ListNode:
            if not head:
                return None
            myNode = head
            while myNode and myNode.next:
                if myNode.val == myNode.next.val:
                    myNode.next = head.next.next
                else:
                    myNode = myNode.next
            return head
    程序2:双指针
    # Definition for singly-linked list.
    # class ListNode:
    #     def __init__(self, x):
    #         self.val = x
    #         self.next = None

    class Solution:
        def deleteDuplicates(self, head: ListNode) -> ListNode:
            if not head:
                return None
            if not head.next:
                return head
            index1 = head
            index2 = head.next
            while index2:
                if index1.val == index2.val:
                    index2 = index2.next
                elif index1.val != index2.val:
                    index1.next = index2
                    index1 = index1.next
                    index2 = index2.next
            index1.next = None
            return head
  • 相关阅读:
    docker十一:docker-DockerFile案例-CMD、ENTRYPOINT、ONBUILD
    查看JVM使用的什么垃圾收集器
    Druid 加载 Kafka 流数据的性能配置参数 TuningConfig
    NPM 和 NVM
    Windows 中 Node.js 中 nvm 的安装配置和使用
    Nvm 安装新的 nodejs 版本
    Druid 加载 Kafka 流数据配置可以读取和处理的流中数据格式
    Druid 加载 Kafka 流数据 KafkaSupervisorIOConfig 配置信息表
    Java 面试都只是背答案不
    有什么理由将代码保存为 GBK 编码
  • 原文地址:https://www.cnblogs.com/zhuozige/p/12813371.html
Copyright © 2011-2022 走看看