Python :删除链表中重复的节点

2023-11-10


牛客网上的剑指 offer的在线编程:

题目描述:

在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5
# -*- coding:utf-8 -*-

class ListNode:
    def __init__(self, x):
        self.val = x
        self.next = None
class Solution:
    def deleteDuplication(self, pHead):
        # write code here
        if pHead is None or pHead.next is None:
            return pHead
        bhead = ListNode(pHead.val - 1)
        bhead.next = pHead
        first_node = bhead
        second_node = pHead
        while second_node and second_node.next:
            if second_node.val == second_node.next.val:
                del_val = second_node.val
                while second_node and (second_node.val == del_val):
                    second_node = second_node.next
                first_node.next = second_node
            else:
                first_node = first_node.next
                second_node = second_node.next
        return bhead.next


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python :删除链表中重复的节点 的相关文章

  • 尽管极其懒惰,但如何在 Python 中模拟 IMAP 服务器?

    我很好奇是否有一种简单的方法来模拟 IMAP 服务器 例如imaplib模块 在Python中 without做很多工作 是否有预先存在的解决方案 理想情况下 我可以连接到现有的 IMAP 服务器 进行转储 并让模拟服务器在真实的邮箱 电子
  • Django REST序列化器:创建对象而不保存

    我已经开始使用 Django REST 框架 我想做的是使用一些 JSON 发布请求 从中创建一个 Django 模型对象 然后使用该对象而不保存它 我的 Django 模型称为 SearchRequest 我所拥有的是 api view
  • Python PAM 模块的安全问题?

    我有兴趣编写一个 PAM 模块 该模块将利用流行的 Unix 登录身份验证机制 我过去的大部分编程经验都是使用 Python 进行的 并且我正在交互的系统已经有一个 Python API 我用谷歌搜索发现pam python http pa
  • 如何使用固定的 pandas 数据框进行动态 matplotlib 绘图?

    我有一个名为的数据框benchmark returns and strategy returns 两者具有相同的时间跨度 我想找到一种方法以漂亮的动画风格绘制数据点 以便它显示逐渐加载的所有点 我知道有一个matplotlib animat
  • Python 多处理示例不起作用

    我正在尝试学习如何使用multiprocessing但我无法让它发挥作用 这是代码文档 http docs python org 2 library multiprocessing html from multiprocessing imp
  • 如何在Windows上模拟socket.socketpair

    标准Python函数套接字 套接字对 https docs python org 3 library socket html socket socketpair不幸的是 它在 Windows 上不可用 从 Python 3 4 1 开始 我
  • Python tcl 未正确安装

    我刚刚为 python 安装了graphics py 但是当我尝试运行以下代码时 from graphics import def main win GraphWin My Circle 100 100 c Circle Point 50
  • 运行多个 scrapy 蜘蛛的正确方法

    我只是尝试使用在同一进程中运行多个蜘蛛新的 scrapy 文档 http doc scrapy org en 1 0 topics practices html但我得到 AttributeError CrawlerProcess objec
  • Python 中的二进制缓冲区

    在Python中你可以使用StringIO https docs python org library struct html用于字符数据的类似文件的缓冲区 内存映射文件 https docs python org library mmap
  • feedparser 在脚本运行期间失败,但无法在交互式 python 控制台中重现

    当我运行 eclipse 或在 iPython 中运行脚本时 它失败了 ascii codec can t decode byte 0xe2 in position 32 ordinal not in range 128 我不知道为什么 但
  • python pandas 中的双端队列

    我正在使用Python的deque 实现一个简单的循环缓冲区 from collections import deque import numpy as np test sequence np array range 100 2 resha
  • 如何将 numpy.matrix 提高到非整数幂?

    The 运算符为numpy matrix不支持非整数幂 gt gt gt m matrix 1 0 0 5 0 5 gt gt gt m 2 5 TypeError exponent must be an integer 我想要的是 oct
  • 循环中断打破tqdm

    下面的简单代码使用tqdm https github com tqdm tqdm在循环迭代时显示进度条 import tqdm for f in tqdm tqdm range 100000000 if f gt 100000000 4 b
  • 通过数据框与函数进行交互

    如果我有这样的日期框架 氮 EG 00 04 NEG 04 08 NEG 08 12 NEG 12 16 NEG 16 20 NEG 20 24 datum von 2017 10 12 21 69 15 36 0 87 1 42 0 76
  • 如何将 PIL 图像转换为 NumPy 数组?

    如何转换 PILImage来回转换为 NumPy 数组 这样我就可以比 PIL 进行更快的像素级转换PixelAccess允许 我可以通过以下方式将其转换为 NumPy 数组 pic Image open foo jpg pix numpy
  • 为美国东部以外地区的 Cloudwatch 警报发送短信?

    AWS 似乎没有为美国东部以外的 SNS 主题订阅者提供 SMS 作为协议 我想连接我的 CloudWatch 警报并在发生故障时接收短信 但无法将其发送到 SMS YES 经过一番挖掘后 我能够让它发挥作用 它比仅仅选择一个主题或输入闹钟
  • 在Python中重置生成器对象

    我有一个由多个yield 返回的生成器对象 准备调用该生成器是相当耗时的操作 这就是为什么我想多次重复使用生成器 y FunctionWithYield for x in y print x here must be something t
  • 检查所有值是否作为字典中的键存在

    我有一个值列表和一本字典 我想确保列表中的每个值都作为字典中的键存在 目前我正在使用两组来确定字典中是否存在任何值 unmapped set foo set bar keys 有没有更Pythonic的方法来测试这个 感觉有点像黑客 您的方
  • 如何使用google colab在jupyter笔记本中显示GIF?

    我正在使用 google colab 想嵌入一个 gif 有谁知道如何做到这一点 我正在使用下面的代码 它并没有在笔记本中为 gif 制作动画 我希望笔记本是交互式的 这样人们就可以看到代码的动画效果 而无需运行它 我发现很多方法在 Goo
  • 循环标记时出现“ValueError:无法识别的标记样式 -d”

    我正在尝试编码pyplot允许不同标记样式的绘图 这些图是循环生成的 标记是从列表中选取的 为了演示目的 我还提供了一个颜色列表 版本是Python 2 7 9 IPython 3 0 0 matplotlib 1 4 3 这是一个简单的代

随机推荐

  • 【整理】BIOS、BootLoader、uboot对比

    bios BIOS是英文 Basic Input Output System 的缩略语 直译过来后中文名称就是 基本输入输出系统 其实 它是一组固化到计算机内主板上一个ROM芯片上的程序 它保存着计算机最重要的基本输入输出的程序 系统设置信
  • Flutter ListView ListView.build ListView.separated

    理解为ListView 的三种形式吧 ListView 默认构造 但是这种方式创建的列表存在一个问题 对于那些长列表或者需要较昂贵渲染开销的子组件 即使还没有出现在屏幕中但仍然会被ListView所创建 这将是一项较大的开销 使用不当可能引
  • 在多态中,析构函数中的virtual与override用法介绍

    在C 中 析构顺序总是先析构派生类 再析构基类 介绍 如果基类的析构函数没有声明为virtual 当使用基类指针 或引用 删除派生类对象时 可能只会调用基类的析构函数 而不会调用派生类的析构函数 这会导致派生类的资源没有被正确释放 从而产生
  • JavaScript reduce()方法详解与实现

    使用方法详解 reduce 方法在数组的每个元素上依次执行传入的 reducer 回调函数 并传入上一次计算的返回值 第一次运行回调函数的时候没有 上一次计算的返回值 调用reduce 方法的时候可以传一个初始值来代替 否则 数组的第一个元
  • MNIST数据集转换为图片数据集的样例程序

    一 编写背景 因为需要对接一个官方的编程API 本人需要自己按其要求搭建一个神经网络 以尝试调用某模块的工作 我参考了Tensorflow的参考书了解了MNIST数据集 然后我准备把MNIST数据集转换为图片格式 以适应API的要求 同样
  • 单片机笔记八:华大单片机报错(未定义__WEAKDEF)

    最近开始用华大的单片机 按照官方的例程做了一个工程模板 结果直接编译不过 而且一口气有30个错误 提示内容如下 WEAK void I2c0 IRQHandler void mcu common interrupts hc32l13x c
  • JavaSE——StringBuffer与StringBuilder拼接字符串详细解释

    目录 一 基本了解 1 1使用字符串频繁拼接会出现什么问题 1 2 了解StringBuffer 1 3 了解StringBuilder 1 4 StringBuffer与StringBuilder的区别 二 StringBuffer的使用
  • 额外函数_强化学习奖励函数塑形简介(The reward shaping of RL)

    RL背景 强化学习解决定义在马尔科夫过程 Makov Decision Processing MDP 下的连续决策问题 其中经典算法Q learning使用如下方程更新 值 策略 在状态s下采取行为a后的累计回报数学期望 Cumulated
  • C/C++使用libcurl库发送http请求(get和post可以用于请求html信息,也可以请求xml和json等串)

    C C 使用libcurl库发送http请求 get和post可以用于请求html信息 也可以请求xml和json等串 C 要实现http网络连接 需要借助第三方库 libcurl使用起来还是很方便的 环境 win32 vs2015 如果要
  • python基础(1)--对象、类、方法、库、函数

    几个概念的简单辨析 对象与类 一个独立的事物称为一个对象 对象具有一定的属性和功能 对象 属性 特征 方法 行为 类是对象的抽样化 类是对象的实例化 方法与函数 函数 通过 函数名 的方式进行调用 内置函数 匿名函数 递归函数 自定义函数等
  • R语言的排列组合函数:排列函数(permutations)和组合函数(combinations)

    R语言的排列组合函数 排列函数 permutations 和组合函数 combinations 排列函数 permutations 和组合函数 combinations 是R语言中用于处理排列和组合问题的常用函数 它们可以帮助我们生成和计算
  • 微信小程序开发(九):使用扩展组件库

    前端开发中离不开各种组件库 我最先接触的组件库还是Bootstrap 后来工作中又陆续使用了inoic ng zorro等各种不同的库 在微信小程序开发中也有多种组件库 这里记录其中几种不同组件库的使用方法 WeUI 这是微信官方推出的一款
  • 2023版golang面试题100道(合集)

    我已经从事后端开发很多年 近期花了大量时间整理了一份 golang面试题100道 涵盖了go开发需要掌握的基础知识 核心要点 题目的答案尽量做到简洁 条理性 golang面试题100道 最新完整合集目录 欢迎关注 回复 面试 即可随时阅读
  • MATLAB 判断字符串中是否含有特定的字符

    这个程序的目的是 逐行读取file txt文件中的字符串 并判断字符串中是否含有特定的字符 如果含有 再对字符串进行处理 然后写入到新的TXT文档中new file txt fid fopen D new file txt wt phns
  • 【好文鉴赏】初创公司到底值不值得去?从以下几点考虑

    关键词 初创公司 职业发展 就业 原文链接 https tech sina cn csj 2018 09 10 doc ihiixyeu5565677 d html https www zhihu com question 31272586
  • Unlit Shader下的Texture切换

    今天要实现一个贴图切换过渡的一个效果 Unlit的性能比较好 所以参考了网上一些Texture的shader之后 写了一下 具体内容 MixValue 来完成渐变效果 MixValue 1时为下面的Texture MixValue 0时为上
  • 巧用replit搭建免费的个人云服务器

    初识replit 被它的免费托管和域名服务所吸引 replit是个啥 在经过一番尝试后 发现这玩意儿挺有意思 佩服老外的想象力和创新力真强 竟还能搭建个人的云服务器 连域名都有了 这可真香 对个人开发者来说连云服务器都省了 想搭建个人网站或
  • 2021年PHP会被淘汰吗

    首先我可以确定的是 PHP肯定不会被淘汰 但是市场占有率肯定回不去以前的状态 以前PHP可以做网页的任何事 包括前端和接口 但是近几年前端的发展非常迅猛 angular vue和react三大前端框架的相继出现 使得前后端已经彻底分离了 所
  • 名人博客VS 博客名人

    不知从什么时候开始 似乎人人都成了blogger 有用的 没用的 快乐的 悲伤的 都会在自己的博客上贴出来 而那些曾经让我们感觉遥不可及的明星们也开始通过博客传递最新动态甚至爆料隐情 由此便催生了一系列跟博客相关的网络词汇 celeblog
  • Python :删除链表中重复的节点

    牛客网上的剑指 offer的在线编程 题目描述 在一个排序的链表中 存在重复的结点 请删除该链表中重复的结点 重复的结点不保留 返回链表头指针 例如 链表1 gt 2 gt 3 gt 3 gt 4 gt 4 gt 5 处理后为 1 gt 2