LeetCode刷题---删除排序链表中的重复元素 II

在这里插入图片描述
解题思路:

1.首先定义虚拟节点dummy,dummy的下一个节点指向head节点。
2.定义辅助节点cur指向dummy节点
3.开始遍历链表,如果当前节点cur的下一个节点和下下一个节点都不为空的情况下,对cur的下一个节点和下下一个节点的值进行判断。
4.如果当前节点cur的下一个节点和下下一个节点的val值相等,则删除cur的下一个节点,使得cur的下一个节点指向cur的下下个节点。
5.重复第4步,直至cur的下一个节点和下下一个节点的val值不相等,此时cur节点前进。

代码实现:

 public ListNode deleteDuplicates(ListNode head) {
        if (head == null) {
            return head;
        }
        
        ListNode dummy = new ListNode(0, head);

        ListNode cur = dummy;
        while (cur.next != null && cur.next.next != null) {
            if (cur.next.val == cur.next.next.val) {
                int x = cur.next.val;
                while (cur.next != null && cur.next.val == x) {
                    cur.next = cur.next.next;
                }
            } else {
                cur = cur.next;
            }
        }

        return dummy.next;
    }

官方题解:LeetCode官方题解

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/345393.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python基础第九篇(Python可视化的开发)

文章目录 一、json数据格式(1).转换案例代码(2).读出结果 二、pyecharts模块介绍三、pyecharts模块入门(1).pyecharts模块安装(2).pyecharts模块操作(1).代码…

洛谷刷题-【入门2】分支结构

目录 1.苹果和虫子 题目描述 输入格式 输出格式 输入输出样例 2.数的性质 题目描述 输入格式 输出格式 输入输出样例 3.闰年判断 题目描述 输入格式 输出格式 输入输出样例 4.apples 题目描述 输入格式 输出格式 输入输出样例 5.洛谷团队系统 题目描述 …

什么是信号抖动

对于抖动,有一个简单而直观的定义: “Jitter is defined as the short-term variations of a digital signal’s significant instants from their ideal positions in time.” 翻译过来,就是: “抖动被定义为一个数字信号的重要时…

Duplicate keys detected: ‘41172‘. This may cause an update error.

在写项目的过程中,遇到了 Duplicate keys detected: 41172. This may cause an update error. 这个错误具体错误信息如下: 原因:v-for 循环时,用了重复的key值 解决方案: 1、单个v-for循环,选择id或其他唯一…

【C++杂货铺】快速学会命名空间

目录 🌈前言 📁 命名空间的定义 📁 命名空间的使用 ● 加命名空间名称及作用域限定符 ● 使用using将命名空间中某个成员引入 ● 使用using namespace 命名空间名称 引入 📁 C输入 和 输出 📁 总结 &#x1f3…

微信小程序首页、界面布局、功能简洁(示例三)

微信小程序首页界面布局、页面简洁,功能简单 直接上具体代码: 1、js代码 Page({/*** 页面的初始数据*/data: {imgList: [../../images/demo.jpg, ../../images/demo.jpg, ../../images/demo.jpg],navList: [{src: ../../images/nav1.png,title: 菜单一}…

《统计学习方法:李航》笔记 从原理到实现(基于python)-- 第 2章感知机

文章目录 第 2章感知机2.1 感知机模型2.2 感知机学习策略2.2.1 数据集的线性可分性2.2.2 感知机学习策略 2.3 感知机学习算法2.3.1 感知机学习算法的原始形式2.3.2 算法的收敛性2.3.3 感知机学习算法的对偶形式 实践:二分类模型(iris数据集)数…

【机器学习300问】17、什么是欠拟合和过拟合?怎么解决欠拟合与过拟合?

一个问题出现了,我们首先要描述这个问题,然后分析问题出现的原因,找到原因后提出解决方案。废话不多说,直接上定义,然后通过回归和分类任务的例子来做解释。 一、什么是欠拟合和过拟合? (1&am…

微信小程序之全局配置-window和tabBar

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您: 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持,想组团高效学习… 想写博客但无从下手,急需…

日常修复msvcp140.dll丢失的解决方法,msvcp140.dll文件的影响

msvcp140.dll文件是Microsoft Visual C Redistributable包的一部分,它在Windows系统中发挥着重要作用。当出现msvcp140.dll丢失的情况时,这意味着操作系统或应用程序无法找到该文件,可能会导致应用程序无法启动、错误提示等问题。幸运的是&am…

【漏洞复现】Atlassian Confluence远程代码执行漏洞(CVE-2023-22527)

文章目录 前言声明一、Atlassian Confluence简介二、漏洞描述三、影响版本四、漏洞复现五、整改意见 前言 Atlassian Confluence是澳大利亚Atlassian公司的一套专业的企业知识管理与协同软件,也可以用于构建企业WiKi。 声明 请勿利用文章内的相关技术从事非法测试…

knife4j调用接口报404

问题 Knife4j文档请求异常,请求资源的接口都是404 解决方法 就是请求路径出错了,我一开始还以为是拦截器拦截了来自knife4j发来的请求。。。

C++后端开发之Sylar学习一:配置环境

Sylar学习一:配置环境 安装虚拟机 我安装的是Ubuntu 20.04,分配了60G的SSD容量,8G的内存 配置Ubuntu 修改软件源 切换到管理员账户进入到/etc/apt目录 /etc/apt 目录是 Ubuntu 系统中存储与包管理系统 APT (Advanced Package Tool) 相关…

需求分析的结构化和面向对象方法

需求分析的方法,主要有结构化(SA)方法、面向对象分析(OOA)方法。另外有面向问题域的分析(Problem Domain Oriented Analysis,PDOA)方法,还有一些形式化方法例如VDM ( Vienna Design Method)和Z等…

Linux中Iptables使用

概念:网络中的防火墙,是一种将内部网络和外部网络分开的方法,是一种隔离技术 作用: 防火墙在内网与外网通信时进行访问控制,依据所设置的规则对数据包作出判断,最大限度地阻止网络中的黑客破坏企业网络&…

抓包工具Charles修改Response步骤

前言 Charles是在Mac下常用的截取网络封包的工具,在测试服务器端的网络通讯,往往用它来截取网络封包来分析。Charles通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取与…

hcip高级网络知识

一:计算机间信息传递原理 抽象语言----编码 编码---二进制 二进制---转换为电流(数字信号) 处理和传递数字信号 二:OSI--七层参考模型 ISO--1979 规定计算机系统互联的组织: OSI/RM ---- 开放式系统互联参考模型 --- 1…

Spring扩展点在微服务应用(待完善)

ApplicationListener扩展 nacos注册服务, 监听容器发布事件 # 容器发布事件 AbstractAutoServiceRegistration#onApplicationEvent # 接收事件吗,注册服务到nacos NacosServiceRegistry#register Lifecycle扩展 #订阅服务实例更改的事件 NamingService#…

Spring基于AbstractRoutingDataSource实现MySQL多数据源

目录 多数据源实现 yml配置文件 配置类 业务代码 案例演示 多数据源实现 yml配置文件 spring:datasource:type: com.alibaba.druid.pool.DruidDataSourcedatasource1:url: jdbc:mysql://127.0.0.1:3306/datasource1?serverTimezoneUTC&useUnicodetrue&characte…

数据结构笔记1

来自《Python数据结构学习笔记》(张清云 编著) 第一章 数据结构基础 1.逻辑结构 集合:结构中的数据元素除了同属于一种类型外,别无其他关系线性结构:数据元素之间一对一的关系树形结构:数据元素之间一对…