LeetCode 2487. 从链表中移除节点:单调栈
【LetMeFly】2487.从链表中移除节点:单调栈
力扣题目链接:https://leetcode.cn/problems/remove-nodes-from-linked-list/
给你一个链表的头节点 head 。
移除每个右侧有一个更大数值的节点。
返回修改后链表的头节点 head 。
示例 1:

输入:head = [5,2,13,3,8] 输出:[13,8] 解释:需要移除的节点是 5 ,2 和 3 。 - 节点 13 在节点 5 右侧。 - 节点 13 在节点 2 右侧。 - 节点 8 在节点 3 右侧。
示例 2:
输入:head = [1,1,1,1] 输出:[1,1,1,1] 解释:每个节点的值都是 1 ,所以没有需要移除的节点。
提示:
- 给定列表中的节点数目在范围
[1, 105]内 1 <= Node.val <= 105
方法一:单调栈
维护一个单调递减栈(严格地说是单调非递增栈):
遍历链表,在
当前节点大于栈顶节点时不断弹出栈顶节点,然后将当前节点入栈。
最终,从栈底到栈顶的元素就是非递增的了。因此也就得到了想要的链表。
- 时间复杂度 O ( l e n ( l i s t n o d e ) ) O(len(listnode)) O(len(listnode))
- 空间复杂度 O ( l e n ( l i s t n o d e ) ) O(len(listnode)) O(len(listnode))
然后被丢弃节点的delete操作就靠力扣了hh。
AC代码
C++
class Solution {
public:ListNode* removeNodes(ListNode* head) {stack<ListNode*> st;while (head) {while (st.size() && st.top()->val < head->val) {st.pop();}st.push(head);head = head->next;}ListNode* lastNode = nullptr;while (st.size()) {ListNode* thisNode = st.top();st.pop();thisNode->next = lastNode;lastNode = thisNode;}return lastNode;}
};
Python
class Solution:def removeNodes(self, head: ListNode) -> ListNode:st = []while head:while len(st) and st[-1].val < head.val:st.pop()st.append(head)head = head.nextfor i in range(len(st) - 1):st[i].next = st[i + 1]return st[0]
同步发文于CSDN,原创不易,转载经作者同意后请附上原文链接哦~
Tisfy:https://letmefly.blog.csdn.net/article/details/135357617
相关文章:
LeetCode 2487. 从链表中移除节点:单调栈
【LetMeFly】2487.从链表中移除节点:单调栈 力扣题目链接:https://leetcode.cn/problems/remove-nodes-from-linked-list/ 给你一个链表的头节点 head 。 移除每个右侧有一个更大数值的节点。 返回修改后链表的头节点 head 。 示例 1: 输…...
LabVIEW在高精度机器人视觉定位系统中的应用
在现代工业自动化中,精确的机器人视觉定位系统对于提高生产效率和产品质量至关重要。LabVIEW软件,以其卓越的图像处理和自动化控制功能,在这一领域发挥着重要作用。本案例将展示LabVIEW如何帮助开发和实现一个高精度的机器人视觉定位系统&…...
Arm CCA机密计算扩展
目录 Realms Realm World和Root World Arm TrustZone扩展和Arm RME之间有什么区别? 在《什么是机密计算?》中所述,Arm CCA允许您在阻止更高特权软件实体(例如Hypervisor)访问的同时部署应用程序或虚拟机(VM)。然而,通常由这些特权软件实体管理内存等资源。在这种情况…...
【Unity入门】热更新框架之xLua
目录 一、xLua概述1.1xLua简介1.2xLua安装 二、Lua文件加载2.1执行字符串2.2加载Lua文件2.3自定义loader 三、xLua文件配置3.1打标签3.2静态列表3.3动态列表 四、Lua与C#交互4.1 C#访问Lua4.1.1 获取一个全局基本数据类型4.1.2 访问一个全局的table4.1.3 访问一个全局的functio…...
大数据Doris(四十五):物化视图选择最优
文章目录 物化视图选择最优 物化视图选择最优 下面详细解释一下第一步最优物化视图是被如何选择出来的。 这里分为两个步骤: 对候选集合进行一个过滤。只要是查询的结果能从物化视图数据计算(取部分行,部分列,或部分行列的聚合)出都可以留在候选集中,过滤完成后候选集合…...
PostgreSQL10数据库源码安装及plpython2u、uuid-ossp插件安装
PostgreSQL10数据库源码安装及plpython2u、uuid-ossp插件安装 1、环境2、安装包下载3、安装3.1 、解压3.2、配置3.3、编译安装3.4 、启动与关闭 4、安装 uuid-ossp 、plpython2u插件5、参考 1、环境 centos 7 、 postgresql 10.19 2、安装包下载 postgres 源码安装包 3、安…...
如何成为ChatGPT 优质Prompt创作者
如何提问? 我想让你成为我的Prompt创作者。你的目标是帮助我创作最佳的Prompt,这个Prompt将由你ChatGPT使用。你将遵循 以下过程:1.首先,你会问我Prompt是关于什么?我会告诉你,但我们需要 通过不断的重复来…...
LeetCode第71题 - 简化路径
题目 以 Unix 风格给出一个文件的绝对路径,你需要简化它。或者换句话说,将其转换为规范路径。 在 Unix 风格的文件系统中,一个点(.)表示当前目录本身;此外,两个点 (…) 表…...
VSCode上远程调试代码出现的问题
记录一下: 真的是汗流浃背了,师妹叫帮忙如何在VSCode上远程调试代码,一些自己已经经历过的问题,现在已经忘记了。又在网上一顿搜索,这次记录下吧。。。 出现以下问题: 1. 终端界面总是sh-4.4 $ ÿ…...
【langchain】入门初探实战笔记(Chain, Retrieve, Memory, Agent)
1. 简介 1.1 大语言模型技术栈 大语言模型技术栈由四个主要部分组成: 数据预处理流程(data preprocessing pipeline)嵌入端点(embeddings endpoint )向量存储(vector store)LLM 终端ÿ…...
《数据结构、算法与应用C++语言描述》- 平衡搜索树 -全网唯一完整详细实现插入和删除操作的模板类
平衡搜索树 完整可编译运行代码见:Github::Data-Structures-Algorithms-and-Applications/_34Balanced search tree 概述 本章会讲AVL、红-黑树、分裂树、B-树。 平衡搜索树的应用? AVL 和红-黑树和分裂树适合内部存储的应用。 B-树适合外部存储的…...
网络路由跟踪工具
随着企业网络需求的增长,组织发现监控和管理其网络基础设施变得越来越困难。网络管理员正在转向其他工具和资源,这些工具和资源可以使他们的工作更轻松一些,尤其是在故障排除方面。 目前,网络管理员主要使用简单、免费提供的实用…...
设计模式 七大原则
1.单一职责原则 单一职责原则(SRP:Single responsibility principle)又称单一功能原则 核心:解耦和增强内聚性(高内聚,低耦合)。 描述: 类被修改的几率很大,因此应该专注…...
(1)(1.13) SiK无线电高级配置(一)
文章目录 前言 1 监控链接质量 2 诊断范围问题 3 MAVLink协议说明 前言 本文提供 SiK 遥测无线电(SiK Telemetry Radio)的高级配置信息。它面向"高级用户"和希望更好地了解无线电如何运行的用户。 !Tip 大多数用户只需要 SiK Radio v2 中提供的基本…...
drf知识--10
接口文档 # 后端把接口写好后: 登录接口:/api/v1/login ---> post---name pwd 注册接口 查询所有图书带过滤接口 # 前后端需要做对接,对接第一个东西就是这个接口文档,前端照着接口文档开发 公司3个人ÿ…...
探索 Vue 实例方法的魅力:提升 Vue 开发技能(下)
🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…...
mysql死锁排查
查看正在进行中的事务 SELECT * FROM information_schema.INNODB_TRX;字段解释trx_id唯一事务id号,只读事务和非锁事务是不会创建id的trx_state事务的执行状态,值一般分为:RUNNING, LOCK WAIT, ROLLING BACK, and COMMITTING.trx_started事务…...
若依项目(ruoy-vue)多模块依赖情况简要分析
主pom文件关键点分析 properties标签声明变量信息:版本号、编码类型、java版本spring-boot依赖形式:spring-boot-dependencies、pom、importdependencies中添加本项目内部模块,同时在modules中声明模块packaging打包选择pom设置打包maven-co…...
【普中开发板】基于51单片机的篮球计分器液晶LCD1602显示( proteus仿真+程序+设计报告+讲解视频)
基于普中开发板51单片机的篮球计分器液晶LCD1602显示 1.主要功能:讲解视频:2.仿真3. 程序代码4. 设计报告5. 设计资料内容清单&&下载链接资料下载链接(可点击): 基于51单片机的篮球计分器液晶LCD1602显示 ( pr…...
按照层次遍历结果打印完全二叉树
按照层次遍历结果打印完全二叉树 按照推论结果: l 层首个节点位置 2h-l - 1l 层节点间距:2h-l1 - 1 编码实现 public static<E> void print(BinaryTree<E> tree) {List<List<Node<E>>> levelNodeList levelOrderTraver…...
金融行业大模型呼叫系统架构与API集成案例
合规化成为金融AI外呼核心需求 随着《个人信息保护法》《反电信网络诈骗法》等法规实施,金融外呼面临严格合规要求。2026年行业数据显示,不合规外呼导致平均投诉率高达18%,单次罚款可达年营收1%。技术化合规成为金融机构数字化转型的关键。 …...
学术PDF处理流水线:OpenClaw+Qwen3-32B-Chat镜像实现论文精读
学术PDF处理流水线:OpenClawQwen3-32B-Chat镜像实现论文精读 1. 为什么需要自动化论文精读工具 作为一名经常需要阅读大量学术文献的研究者,我长期被三个问题困扰:一是PDF文档的信息密度太高,逐字阅读耗时耗力;二是跨…...
3大优势解决UI测试痛点:Maestro跨平台自动化框架实战指南
3大优势解决UI测试痛点:Maestro跨平台自动化框架实战指南 【免费下载链接】maestro Painless Mobile UI Automation 项目地址: https://gitcode.com/GitHub_Trending/ma/maestro UI自动化测试一直是移动应用开发中的关键环节,但传统工具往往面临跨…...
OpenWrt 固件扩容官方指南
[OpenWrt Wiki] Expanding root partition and filesystem OpenWrt针对固件扩容有官方指南,但目前很多网络教程仍然停留在老版本,特此记录。 特点: 1、支持 ext4 和 squashfs 固件格式 2、自动识别根分区和文件系统。 3、利用空闲空间扩…...
包含多体型模板的AI虚拟智能试衣系统源码
温馨提示:文末有资源获取方式在电商竞争日益白热化的今天,商品展示图的质量直接决定了点击率与转化率。对于服装类目而言,传统模特拍摄不仅面临模特、摄影、场地的高昂成本,更受限于漫长的拍摄周期。为了解决这一行业痛点…...
华为OD机考实战:多语言实现App防沉迷系统的时间段冲突与优先级调度
1. 防沉迷系统的核心逻辑解析 这个题目模拟了一个非常实用的场景——手机App防沉迷系统。我第一眼看到这个题目时,感觉特别亲切,因为现在手机上各种App确实很容易让人沉迷。系统的主要功能是管理不同App的使用时间段,确保在特定时间段内只能使…...
foobox-cn深度解析:foobar2000高级定制实战指南
foobox-cn深度解析:foobar2000高级定制实战指南 【免费下载链接】foobox-cn DUI 配置 for foobar2000 项目地址: https://gitcode.com/GitHub_Trending/fo/foobox-cn foobar2000作为专业音乐播放器,其默认界面往往难以满足高级用户的个性化需求。…...
Qwen2-VL-2B-Instruct入门指南:Streamlit界面分区逻辑与交互事件绑定
Qwen2-VL-2B-Instruct入门指南:Streamlit界面分区逻辑与交互事件绑定 1. 工具简介与核心价值 Qwen2-VL-2B-Instruct是一个基于GME-Qwen2-VL模型开发的多模态嵌入与比对工具。这个工具的核心能力是将文本和图片转换成统一的向量表示,然后计算它们之间的…...
2026年免登在线PDF转Word免费工具横评与选型指南
2026年免登在线PDF转Word免费工具横评与选型指南 日常办公、学习场景中,PDF转Word是高频刚需,不少用户都遇到过工具强制注册绑定个人信息、转换后带强制水印、文件大小限制严格,甚至上传文档被平台留存泄露隐私的糟心经历,很多人都…...
智能客服多智能体架构实战:知识库问答与情绪感知的协同优化
最近在优化公司智能客服系统时,遇到了一个典型难题:系统既要能快速准确地从知识库中找到答案,又要能实时感知用户的情绪变化,以便提供更人性化的服务。传统的单体架构把这两件事揉在一起,结果就是性能上不去࿰…...
