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

力扣hot100(37)栈-有效的括号

核心思想:为什么必须用栈?

一句话:

括号的闭合规则 = 栈的 "后进先出" 规则

后遇到的左括号,必须最先被闭合。 比如([)]

  • 先遇到(,再遇到[
  • 接下来遇到),应该先闭合最后遇到的[,但这里闭合了(,所以错误

栈正好完美匹配这个逻辑:

  • 遇到左括号 → 压入栈顶(后遇到的在最上面)
  • 遇到右括号 → 弹出栈顶的左括号,检查是否匹配。

完整解题步骤

  1. 边界预判:如果字符串长度是奇数,直接返回false(括号必须成对出现)
  2. 建立映射:用哈希表存储 "右括号 → 对应左括号" 的映射,方便快速查找
  3. 遍历字符串
    • 遇到左括号 → 压入栈
    • 遇到右括号:
      • 如果栈为空(没有对应的左括号)→ 返回false
      • 如果栈顶的左括号和当前右括号不匹配 → 返回false
      • 如果匹配 → 弹出栈顶
  4. 最终检查:遍历结束后,如果栈为空,说明所有左括号都匹配成功;否则有剩余左括号没匹配,返回false
class Solution { public: bool isValid(string s) { int n = s.size(); //如果是奇数肯定不成对 直接返回false if(n%2 == 1){ return false; } //哈希表维护正常的配对 //右括号当键 unordered_map<char,char> pairs = { {')','('}, {']','['}, {'}','{'} }; stack<char> stk; //遍历这个s 遇到左括号就入栈 遇到右括号就和栈顶匹配 for(char ch:s){ if(pairs.count(ch)){//判断ch这个键存不存在 也就是是不是右括号 //如果哈希表里有ch当前这个字符 //如果当前栈为空(那就没有匹配的) 或者栈顶不等于当前元素的另一半 if(stk.empty()||stk.top()!= pairs[ch]){ return false; } //否则就是匹配上了 那就弹出栈顶 stk.pop(); } else{//如果不是右括号 那就入栈 stk.push(ch);} } return stk.empty(); //最后看看最后的栈是否为空 如果是空说明都匹配了 所以是真的;如果不为空 说明有剩余 说明假的 } };
http://www.gsyq.cn/news/1415937.html

相关文章:

  • 山东省# 平度寄件不花冤枉钱!2026全国靠谱快递平台实测,这4个闭眼冲 - 时讯资讯
  • 基于Arduino与压电传感器的DIY防盗报警器制作全攻略
  • Claude响应延迟飙升?3步定位GPU内存泄漏并实现47%吞吐量提升
  • Scrapy中间件:编写Downloader Middleware实现随机UA和代理。手把手教你打造Scrapy智能中间件:随机UA与代理池实战,爬虫再也不怕被封
  • 多线程爬虫进阶:使用concurrent.futures模块实现海量图片极速下载
  • 频繁漏评丢粉丝?自媒体自动回复解决私信评论难题 - 资讯焦点
  • XC16X快速寄存器组切换技术优化中断响应
  • 告别卡顿!用Wayland+Weston打造丝滑Linux桌面,保姆级配置与避坑指南
  • 多进程爬虫:利用多核CPU分别爬取不同的板块。多进程爬虫实战:利用多核CPU并发爬取多个板块,性能提升500%
  • 广州小红书代运营公司排名及联系方式——广州市壹起航科技有限公司:17年全网营销积淀,打造小红书实效代运营行业标杆(更新时间:2026-05-27 23:16:59) - 趣谈科技事物
  • Akagi麻将AI助手:你的实时私人教练,让每局麻将都成为学习机会
  • 生产者消费者模式:使用Queue标准库构建生产者消费者爬虫模型。深度实战:基于Queue标准库的生产者消费者爬虫模型,打造高并发分布式采集系统
  • 激光雕刻控制软件LaserGRBL:从入门到精通的5个关键问题解答
  • 3分钟快速激活Beyond Compare:终极免费密钥生成方案
  • 猫抓:网页视频下载的终极解决方案,轻松捕获所有流媒体资源
  • 无细胞蛋白表达应用案例:eProtein Discovery实现BTK抑制剂5天筛选与功能表征
  • 从医疗诊断到垃圾邮件过滤:混淆矩阵与F1 Score在实际业务场景中的选择指南
  • 随州黄金回收2026报价|正规渠道与避坑指南 - 润富黄金珠宝行
  • 2026年嘉兴不锈钢水箱厂家嘉兴晶览从水泵配套幕后走向直客服务前台 - 资讯焦点
  • 2026常锡镇泰制造宣传片拍摄制作公司口碑排行榜 - 奔跑123
  • 2026 标书查重避坑指南:投标人告别废标 / 串标红线的核心方案 - 资讯焦点
  • 小红书怎么去水印|2026全场景无损操作方法适配各类设备 - 科技热点发布
  • 2026 昆明黄金回收怎么选?资质全、流程透、服务稳的正规门店详解 - 润富黄金珠宝行
  • 用DAX计数函数搞定业务分析:从销售订单数到活跃用户数的完整实战
  • Vivado 2019.2 编译 Modelsim 库总报错?别慌,先检查这个 .ini 文件里的隐藏开关
  • 2026全屋智能方案与装修规划优势评测报告:从设计到交付的省心评估 - 资讯焦点
  • 沈阳・大连购宠避坑指南:5 家靠谱实体门店实测推荐 - 速递信息
  • 2026 塑料包装袋权威榜单:真空包装袋、八边封包装袋、自封包装袋、蒸煮包装袋核心厂家实力排行 - 速递信息
  • 桂林瓷砖空鼓修复公司实力排行:4家正规机构盘点 - 奔跑123
  • 玉林黄金回收避坑 2026防套路全攻略 - 润富黄金珠宝行