栈的应用妙招:五道题秒解字符串难题

发布时间:2026/11/6 8:59:56

栈的应用妙招:五道题秒解字符串难题 栈是我们之前学过的一种容器针对特定的题型这种容器能让我们更快地解决问题1.删除字符串中的所有相邻重复项题目来源1047. 删除字符串中的所有相邻重复项 - 力扣LeetCode这道题有点像俄罗斯方块那个游戏可以消除的版本可以将字符串竖着看就像这样将相邻的元素都删掉可以发现题目完美符合栈这个数据结构可以在这里使用栈但没必要用一个字符串来模拟栈就足够了具体代码如下2.比较含退格的字符串题目来源844. 比较含退格的字符串 - 力扣LeetCode题目的意思很简单把#当做删除键对字符串进行处理最后比较处理完的字符串相不相等可以发现这道题和上一道题基本上是一模一样的只不过删除的规则不一样上道题删除的规则是有相邻的相同字母就删除这道题是遇到‘#’就删除具体代码如下3.基本计算器II题目来源227. 基本计算器 II - 力扣LeetCode先来看题目是什么意思题目给了我们一个字符串这个字符串的内容表示一个计算式需要我们将计算的结果返回字符串中的字符大致可以分为三类1数字2运算符号3空格因为空格很好处理所以我们这里只需要考虑数字和运算符号怎么处理就好了按照计算式来看每一个数字都对应着一个计算符号由于运算符号优先级的关系这里‘*’ ‘/’和,-之间需要采取不同的处理方式运算符号是‘*’,/时可以直接与前一个数字进行运算运算符号是‘’‘-’时需要考虑后面的符号是否是‘*’‘/’所以我们需要一个整形数组来管理结果数组中的每一个元素都是进行完乘除操作或者是不需要乘除操作的数字最后将这些元素都加起来就得到了最终的结果具体代码如下还有一个需要注意的点在统计每一个数字时我们需要考虑这个数字是几位数并且因为for循环本身会进行所以我们需要先检查下一个字符是否是数字再决定是否要进行这样的好处是不会跳过运算符号4.字符串解码题目来源394. 字符串解码 - 力扣LeetCode根据题目的意思我们可以知道字符的类型共有四种1.数字2.字母3.[4.‘]’根据这四种情况我们需要采取不同的处理方法以下面这个例子来分析根据题目的意思我们能够知道每一个括号前都有一个数字代表括号里面的内容要重复出现几次所以出现一个数字时我们需要将这个数字记录下来又因为数字后面可能还有其他括号内容对应的数字并且内部的内容是先进行复制的这种先后顺序完美符合栈这个数据结构所以我们可以定义一个栈来管理数字同样的我们可以定义一个栈来管理字符串当遇到数字时我们将数字记录下来当遇到‘[’时我们让i根据‘[’后面是什么字符来考虑进行什么操作如果后面是数字就再次将数字记录下来如果是字母那就将字母记录下来当遇到]时我们将字符串的栈顶元素和数字的栈顶元素拿出来解析加到字符的栈顶元素的后面当遇到字母时将字母加到栈顶元素的后面就好了具体代码如下5.验证栈序列题目来源946. 验证栈序列 - 力扣LeetCode这道题的意思很简单让我们用那两个数组来模拟栈的进栈出栈看操作是否合法我们直接创建一个栈来进行模拟就好了具体代码如下以上就是本篇文章的全部内容了如果对你有帮助可以点个赞支持一下感谢各位的观看TA 关注的仓库 - 陌染青云 (mo-ran-qingyun) - Gitee.com这是我个人的gitee 仓库,账号上文章的代码都会发到仓库里有兴趣可以看一下
延伸阅读

更多相关文章

2026/11/6 8:59:56

2026年WorkBuddy培训公司哪家靠谱?岗位顺序怎么排

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/6 8:59:56

循环杯借还系统的技术拆解:从杯底二维码到碳减排核算链路

上个月在香港国际环保博览看了一套循环杯借还系统。作为从业者,我关心的不是杯子做得好不好看,而是这套系统在数据层是怎么跑通的。本文从技术角度拆一遍:一只杯子从被借出到归还,中间产生了哪些数据、这些数据怎么支撑"减废…

2026/11/6 8:59:56

稚晖君这台开源桌面机器人ElectronBot,藏着具身智能的预演

〇、先立时间锚点:一个“捡鼠标垫配电脑”的故事ElectronBot 发布于 2022 年 3 月,是稚晖君在华为"天才少年"时期的开源个人项目。作者在原视频里戏称项目动机是“捡到一个鼠标垫,想配一台电脑”——他淘到一块圆形 LCD 屏&#xf…

2026/11/6 10:05:17

Java后端开发必看:收藏这份AI转型指南,轻松入局高薪AI赛道!

Java后端开发在AI时代面临冲击,但并非“凉了”。企业更需懂AI的复合型人才。建议Java开发者升级技能,学习AI应用与智能体开发,薪资有望上涨40%以上。 今年招聘市场变化真大,尤其是后端开发相关的岗位。有很多同学在社交平台发帖质…

2026/11/6 10:05:17

告别ChatGPT副业陷阱,真正能赚钱的AI玩法都在这里!

本文指出当前围绕ChatGPT等AI工具的赚钱热潮已逐渐降温,初期的红利期主要集中在掌握信息差和销售教程上。随着AI技术的成熟,重复性、标准化的编程任务将逐渐被AI取代。未来,真正的机会在于将AI与专业领域结合,通过AI提升效率、创造…

2026/11/6 10:05:17

10-04-互操作-NativeContainer深度解析

NativeContainer 深度解析篇章:10-核心技术-托管互操作篇 | 阅读时间:约 45 分钟一、引言NativeContainer 是 Unity 在非托管内存上实现的数据结构系列,是 Job System 和 ECS 的数据基础设施。它们在非托管堆上分配内存,完全绕过 …

2026/11/6 10:05:17

我把公司钥匙交给了本地,查出 5 个致命漏洞

副标题:从"云端全托管"到"密钥留本地"——一代安全重构是怎么逼出来的一、引子那张安全审计报告,我到现在还留着。不是因为它有多复杂,而是因为它改变了我对"安全"这两个字的理解。报告开头写了一句话&#xf…

2026/11/6 9:55:13

实战分享:Docker镜像构建优化技巧(进阶篇)全流程解析

本文深入探讨Docker镜像构建优化技巧(进阶篇),涵盖背景分析、原理剖析、实战步骤、配置示例、优化建议和避坑指南。随着业务规模增长,Docker镜像构建优化技巧(进阶篇)的重要性日益凸显。无论你是刚入门还是…

2026/11/5 15:39:06

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/4 21:04:25

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/6 1:03:39

MCU晶振电路设计全解析:从负载电容计算到PCB布局调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/5 15:39:06

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/4 21:04:25

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑