力扣203. 移除链表元素

在这里插入图片描述

写法1、头节点 和 后面的节点 删除规则不一致


class Solution {public ListNode removeElements(ListNode head, int val) {//如果不建虚拟头节点,那删头节点和删后面的节点,逻辑是不一样的//头节点可能连续多个命中val,所以有while,不是ifwhile(head!=null && head.val == val){head=head.next;}ListNode cur = head;//上面head可能全部删完了,所以要判断,cur不为null,我们下面需要取cur.next的val,所以还要判断cur.next不为null,while(cur!=null&&cur.next!=null){if(cur.next.val == val){//相等就跳过中间的一个节点cur.next = cur.next.next;}else{//不相等就往后走cur = cur.next;}}return head;}
}

写法2、新建虚拟指针法:使得删除规则可以一致


class Solution {public ListNode removeElements(ListNode head, int val) {//新建一个虚拟头节点,让算法规则统一ListNode xuniHead = new ListNode();xuniHead.next = head;//当前节点cur必须指向虚拟头节点 而不是head,因为我们算法统一后是没办法删除cur本身节点的,算法只能删除cur.next及之后的(也就是head及之后的)ListNode cur = xuniHead;while(cur.next!=null){if(cur.next.val == val){//相等就跳过中间的一个节点cur.next = cur.next.next;}else{//不相等就往后走cur = cur.next;}}return xuniHead.next;}
}

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VMware错误解决

1、错误:operating system not found: 编辑虚拟机 :找到CD/DVD并点击 --- 映像文件 2、VMware:no boot filename received 解决方法:重新换个镜像,网上各种网站的镜像大多都是有问题,最推荐的网站还是 MSDN, 我告…

大型政企智能化升级,有了“验方”

随着两会落下帷幕,“人工智能”正式上升为国家战略,智能化建设的浪潮席卷而来。在这场转型升级的浪潮中,大型政企扮演着举足轻重的角色。它们不仅是智能化升级的重要力量,更是引领行业变革、推动社会进步的关键因素。 在智能化升…

2684. 矩阵中移动的最大次数

说在前面 🎈不知道大家对于算法的学习是一个怎样的心态呢?为了面试还是因为兴趣?不管是出于什么原因,算法学习需要持续保持。 题目描述 给你一个下标从 0 开始、大小为 m x n 的矩阵 grid ,矩阵由若干 正 整数组成。 …

this指向是在那个全局变量?

在浏览器环境中,如果没有特殊处理,全局对象是 window 对象。因此,在浏览器环境中,this 的指向在全局作用域中将是 window 对象。在 Node.js 环境中,全局对象是 global 对象。 举例来说,在浏览器环境下&…

月度工作计划

以下是一份可能的月度工作计划,包含了您提供的关键词: 第一周:需求分析和项目规划 需求分析 确定爬虫的目标网站和所需数据。分析所需解析的民航相关知识网站的内容结构。 项目规划 制定项目时间表和里程碑。分配资源和任务。 第二周&…

How to upgrade NBU cluster from 10.0.0.1 to 10.2.0.1

1. Environment Statement OS: SuSE 12 SP4 InfoScale: 7.4.2 NBU: 10.0.0.1 2. Download EEB patch and utf8 tools 2.1 Donwload utf8 check tools from Veritas. utf8 character check before NBU upgrade, upgrade will be failed if “NBDB” is using utf8 characte…

C# EPPlus导出dataset----Excel3样式

目录 一、单元格计算 二、隐藏操作 三、全局样式 四、指定范围样式

Python实战:Flask轻量级web框架入门

Flask是一个轻量级的Web框架,它是由Armin Ronacher开发的,使用Python语言编写。Flask易于上手,具有高度的可扩展性,非常适合快速开发Web应用程序。 一.Flask简介 Flask是一个基于Werkzeug WSGI工具箱和Jinja2模板引擎的Web框架。…

thinkphp 微信商户转账到微信小程序用户零钱(v3密钥版)

这几天做项目有一个需求,小程序用户提交记录后,商家后台审核通过自动转账到用户的微信零钱中. 今天分享下如何实现自动打款, 一种是用v2密钥的接口:企业付款到零钱 一种是用v3密钥的接口:微信商户转账到零钱(听说是v2接口的微信商户容易被限制,后来就改成v3了) php后端代码 v3…

Linux中判断某个Docker容器服务的内存是否超过临界值,比如到达10G,则在凌晨4点执行定时任务执行重新构建命令

监测NAME是blade-jiangxinzhougarden的服务,如果内存(MEM USAGE)超过10G则在凌晨4点执行重新构建命令 1.编写脚本文件restart_jxz.sh #!/bin/bash# 设置要监控的容器名称或服务名称(替换成你的服务名) SERVICE_NAME"blade-jiangxinzhou…

正信晟锦:老板拖工资怎么说比较合适

在职场中,老板拖欠工资是一个敏感而棘手的问题。面对这一情况,员工应保持冷静与专业,采取合适的方式表达自己的合理关切,并寻求问题的解决。 私下与老板进行沟通。选择一个适当的时机,以尊重和理解的态度开场&#xff…

Leetcode 3084. Count Substrings Starting and Ending with Given Character

Leetcode 3084. Count Substrings Starting and Ending with Given Character 1. 解题思路2. 代码实现 题目链接:3084. Count Substrings Starting and Ending with Given Character 1. 解题思路 这一题其实挺简单的,只要看一下目标的character在stri…

数据库系统概论 第五版(王珊) 数据库课程实验

数据库系统概论 第五版(王珊) 数据库课程实验 定义基本表 8个基本表建表sql如下: CREATE TABLE Region(/*地区表*/regionkey INTEGER PRIMARY KEY ,name CHAR(25),COMMENT VARCHAR(152) );CREATE TABLE Nation (/*国家表*/nationkey integer PRIMARY KEY ,name c…

每日一题——LeetCode1694.重新格式化电话号码

方法一 模拟: 首先去除number里面的破折号和空格,取出纯数字组成的字符串str。 对于str每三个数分成一组,加一个破折号,当str的长度小于等于4时再分情况讨论,如果等于4就分为22形式,如果小于4&#xff0c…

Springboot 整合Mybatis 实现增删改查(二)

续上篇:Springboot整合Mybatis的详细案例图解分析-CSDN博客 mapper层(StudentMapper) //通过id查询student方法Student searchStudentById(int id);//通过id删除student方法int deleteStudentById(int id);//通过id增加student方法int inser…

基于springboot+vue的乡政府管理系统

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作 ​主要内容:毕业设计(Javaweb项目|小程序|Pyt…

Fay数字人<助理版>具体编译步骤,手把手带你避坑 | 多图预警 ( python 3.11 编译环境 超详细教程 )

Fay数字人<助理版>具体编译步骤 系列教程环境描述一、搭建编译环境1、下载anaconda2、下载Fay(带货版)源码 二、Fay编译参数配置&#xff08;手把手教学&#xff09;(一)Fay具体编译步骤(二)配置 aliyun key(三)配置 aliyun 智能语音交互app(四)修改并配置自己的FAY数字…

解决后端传给前端的日期问题

解决方式&#xff1a; 1). 方式一 在属性上加上注解&#xff0c;对日期进行格式化 但这种方式&#xff0c;需要在每个时间属性上都要加上该注解&#xff0c;使用较麻烦&#xff0c;不能全局处理。 2). 方式二&#xff08;推荐 ) 在WebMvcConfiguration中扩展SpringMVC的消息转…

canal问题记录:something goes wrong when doing authentication: auth failed for user:

一、问题描述 部署了1.15服务端 canal.deployer-1.1.5 用于监听mysql的binlog日志&#xff0c;同时在项目中集成了canal client,用于在监听到指定数据表变化时自定义写入es。 服务端配置&#xff1a; 客户端配置&#xff1a; public void run() {// 创建链接CanalConnector …

全流程ArcGIS Pro技术应用

GIS是利用电子计算机及其外部设备&#xff0c;采集、存储、分析和描述整个或部分地球表面与空间信息系统。简单地讲&#xff0c;它是在一定的地域内&#xff0c;将地理空间信息和 一些与该地域地理信息相关的属性信息结合起来&#xff0c;达到对地理和属性信息的综合管理。GIS的…