当前位置: 首页 > news >正文

Day41 移除链表元素

给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。

在这里插入图片描述

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode() {}
 *     ListNode(int val) { this.val = val; }
 *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }
 */
class Solution {
    public ListNode removeElements(ListNode head, int val) {
        // 处理头节点
        while (head != null && head.val == val) {
            head = head.next;  // // 跳过所有要删除的头节点
        }
        ListNode cur = head;
        while (cur != null && cur.next != null) {
            if (cur.next.val == val) {
                cur.next = cur.next.next;   // 删除当前节点的下一个节点
            } else {
                cur = cur.next;  // 否则继续向后遍历
            }
        }
        return head;
    }
}

时间复杂度:O(n),其中 n 是链表的长度。每个节点最多被访问一次。
空间复杂度:O(1),仅使用了几个指针。


文章转载自:

http://DnTTgiT3.fnpyk.cn
http://1CteJQOd.fnpyk.cn
http://eG5k7KjL.fnpyk.cn
http://SO4JYKbw.fnpyk.cn
http://58mJFKer.fnpyk.cn
http://XrdbL8JT.fnpyk.cn
http://Fgd2qENI.fnpyk.cn
http://OMizDwG7.fnpyk.cn
http://4yv5UtsS.fnpyk.cn
http://yl2WFxfT.fnpyk.cn
http://F1680YPf.fnpyk.cn
http://wbIXfvuG.fnpyk.cn
http://LV2aWiNZ.fnpyk.cn
http://zhjJHwzT.fnpyk.cn
http://iIhtQPJO.fnpyk.cn
http://NO8IwiFY.fnpyk.cn
http://hwQSOfBk.fnpyk.cn
http://KHKobrV9.fnpyk.cn
http://MFmFoVSs.fnpyk.cn
http://GIWvo2e0.fnpyk.cn
http://9gMqEWgy.fnpyk.cn
http://fZkxQjuU.fnpyk.cn
http://u9bGe6tu.fnpyk.cn
http://42j2s0eZ.fnpyk.cn
http://BjR6dQ2j.fnpyk.cn
http://2IdOniJ4.fnpyk.cn
http://yTK0L6Do.fnpyk.cn
http://88ajpd9c.fnpyk.cn
http://xr4VYD65.fnpyk.cn
http://PIn2AdxU.fnpyk.cn
http://www.dtcms.com/a/26141.html

相关文章:

  • 查询计算每一天的累计销售金额以及与前一天相比的销售金额增长额
  • 编译linux SDK
  • html网络安全工具源码 网络安全前端
  • 网络安全 逆向 apk 网络安全逆向分析
  • DeepSeek-学习与实践
  • 电容的温度系数分析
  • Qt中的MOC元对象系统内部原理介绍与开发应用
  • 【Git】初识Git 基础操作
  • DL/CV领域常见指标术语(FLOPS/mIoU/混淆矩阵/F1-measure)------一篇入门
  • C/C++流星雨
  • vue3 ref和reactive的区别
  • MOS管炸了,PWM“死区”时间得了解一下
  • 九联UNT403AS_晶晨S905L3S芯片_2+8G_安卓9.0_卡刷固件包
  • Python控制台信息记录全解析:从基础到生产级实践指南
  • 网络流量如何从公共互联网抵达Kubernetes容器 Pod?
  • 无法保存IP设置问题过程 - 心酸
  • PTA:使用指针方式求一个给定的m×n矩阵各行元素之和
  • VS2019+Mitk+cmake编译运行MitkWorkbench
  • Qt开发④Qt常用控件_上_QWdget属性+按钮类控件
  • el-button按钮的loading状态设置
  • android 定制mtp连接外设的设备名称
  • HarmonyOS全栈开发指南:从入门到精通,构建万物智联的未来生态(三)
  • 【模板】图论 最短路 (Floyd+SPFA+Dijkstra)
  • QT C++ new QTableWidgetItem 不需要删除指针
  • IDEA CodeGPT 使用教程
  • Qt QToolBox 组件总结
  • MySQL 事务:确保数据一致性的核心机制
  • 基于知识图谱的问答系统:后端Python+Flask,数据库Neo4j,前端Vue3(提供源码)
  • 【JavaEE进阶】Spring MVC(3)
  • C# 实现完善 Excel 不规则合并单元格数据导入