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

栈----1.有效的括号

20. 有效的括号 - 力扣(LeetCode)

/**

        括号特性:

                左括号必定先出现,每个左括号都需要一个右括号与之匹配,后出现的左括号先匹配

        解法:

                依据后出现的左括号先匹配,很容易联想到栈,即后进先出

                遍历字符串,遇到左括号就在栈中添加一个对应的右括号

                遇到右括号就弹出栈顶元素判断是否一致(当前遍历到的最后一个出现的左括号是否能闭合)

            不合法:    

                若弹出的右括号与遇到的右括号不一致---> 左右类型不匹配,不合法

                若遇到右括号时栈中无元素可弹出---> 右括号多余无法闭合,不合法

                若字符串遍历结束栈中仍有元素---> 左括号多余无法闭合,不合法

*/

class Solution {/**括号特性:左括号必定先出现,每个左括号都需要一个右括号与之匹配,后出现的左括号先匹配解法:依据后出现的左括号先匹配,很容易联想到栈,即后进先出遍历字符串,遇到左括号就在栈中添加一个对应的右括号遇到右括号就弹出栈顶元素判断是否一致(当前遍历到的最后一个出现的左括号是否能闭合)不合法:    若弹出的右括号与遇到的右括号不一致---> 左右类型不匹配,不合法若遇到右括号时栈中无元素可弹出---> 右括号多余无法闭合,不合法若字符串遍历结束栈中仍有元素---> 左括号多余无法闭合,不合法*/public boolean isValid(String s) {//利用双端队列模拟栈Deque<Character> stack = new ArrayDeque<>();//按规则遍历字符串for(char c : s.toCharArray()) {//将对应的右括号入栈if(c == '(') {stack.push(')');} else if(c == '[') {stack.push(']');} else if(c == '{') {stack.push('}');}//遇到右括号,判断是否合法else {//右括号多余或左右类型不匹配 不合法if(stack.isEmpty() || stack.pop() != c) {return false;}}}//左括号多余if(!stack.isEmpty()) {return false;}return true;}
}

http://www.lryc.cn/news/600112.html

相关文章:

  • 机器学习 KNN 算法,鸢尾花案例
  • 从Taro的Dialog.open出发,学习远程控制组件之【事件驱动】
  • C++ 多线程同步机制详解:互斥锁、条件变量与原子操作
  • Python Multiprocessing 进程池完全教程:从理论到实战
  • 数据结构(3)单链表
  • [尚庭公寓]14-找房模块
  • Canal 1.1.7的安装
  • 习题5.6 “数学黑洞“
  • PHP插件开发中的一个错误:JSON直接输出导致网站首页异常
  • 纸板留声机:用ESP32和NFC打造会唱歌的复古装置
  • 手语式映射:Kinova Gen3 力控机械臂自适应控制的研究与应用
  • 秒收蜘蛛池解析机制的原理
  • PPIO上线阿里旗舰推理模型Qwen3-235B-A22B-Thinking-2507
  • ATR2652SGNSS全频段低噪声放大器
  • PostgreSQL对象权限管理
  • GPU 驱动安装升级测试
  • [NPUCTF2020]ReadlezPHP
  • CSS 盒子模型学习版的理解
  • C语言第 9 天学习笔记:数组(二维数组与字符数组)
  • ODFM(正交频分复用)系统中加入汉明码(Hamming Code)的主要目的是增强抗误码能力,通过**前向纠错(FEC)**机制提高传输可靠性
  • KNN算法:从原理到实战全解析
  • Kubernetes深度解析:企业级容器编排平台的核心实践
  • 内存 管理
  • LeetCode 233:数字 1 的个数
  • ACL:访问控制列表
  • 大数据中心——解读60页IDC云数据中心机房运维服务解决方案【附全文阅读】
  • MMRotate ReDet ReFPN 报错 `assert input.type == self.in_type`
  • Linux的磁盘存储管理实操——(下二)——逻辑卷管理LVM的扩容、缩容
  • ComfyUI中运行Wan 2.1工作流,电影级视频,兼容Mac, Windows
  • 一些常见的网络攻击方式