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

LeetCode--20.有效的括号(栈和队列)

20.有效的括号

题目描述

给定一个只包括'('')''{''}''['']'的字符串s,判断字符串是否有效。

有效字符串需满足:

  1. 左括号必须用相同类型的右括号闭合。
  2. 左括号必须以正确的顺序闭合。
  3. 每个右括号都有一个对应的相同类型的左括号。

示例 1:

**输入:**s = “()”

**输出:**true

示例 2:

**输入:**s = “()[]{}”

**输出:**true

示例 3:

**输入:**s = “(]”

**输出:**false

示例 4:

**输入:**s = “([])”

**输出:**true

示例 5:

**输入:**s = “([)]”

**输出:**false

提示:

  • 1 <= s.length <= 104
  • s仅由括号'()[]{}'组成

解题思路

以输入示例"([])"为例,只有输入为右括号时再进行出栈。最后检查栈是否为空!

代码

classSolution{publicbooleanisValid(Strings){// 创建一个栈用于存放括号数组Deque<Character>stack=newLinkedList<>();// 将字符串转换为字符数组处理char[]array=s.toCharArray();inti=0;// 遍历字符数组while(i<array.length){if(array[i]==')'){// 如果 () 匹配则出栈if(!stack.isEmpty()&&stack.peek()=='('){stack.pop();}else{returnfalse;}}elseif(array[i]=='}'){// 如果 {} 匹配则出栈if(!stack.isEmpty()&&stack.peek()=='{'){stack.pop();}else{returnfalse;}}elseif(array[i]==']'){// 如果 [] 匹配则出栈if(!stack.isEmpty()&&stack.peek()=='['){stack.pop();}else{returnfalse;}}else{// 都不匹配就入栈stack.push(array[i]);}i++;}// 若栈为空则返回truereturnstack.isEmpty();}}
http://www.jsqmd.com/news/644794/

相关文章:

  • 【程序源代码】SBTI人格测试
  • USBCopyer终极指南:Windows平台USB自动备份神器,让文件管理零烦恼
  • 3分钟极速解密:ncmppGui让你的NCM音乐文件重获新生
  • 告别数据尾!用STM32F767的空闲中断(IDLE)优雅处理串口不定长数据
  • 深度解析APK文件:Java开发者必备的apk-parser完全实战指南
  • 从电磁仿真难题到专业解决方案:gprMax如何重新定义地质雷达模拟
  • SpringBoot 自动配置过滤:排除特定自动配置
  • League Akari:英雄联盟智能助手终极指南
  • ABB机器人控制柜指示灯全解析:从新手到专家的故障排查指南
  • YOLOv11、PyQt5、火灾烟雾检测 智慧火灾监测-YOLOv11火灾检测系统【YOLO火灾检测系统】智能预警,守护安全 火灾监测数据集的训练及应用
  • ComfyUI IPAdapter工作流节点缺失问题终极解决指南:从快速修复到深度排查
  • 【Aseprite】Unity2D平台游戏瓦片地图全流程制作指南
  • 二次元头像批量转真人?Anything to RealCharacters 2.5D引擎多图处理与效率优化指南
  • PDF Arranger:让PDF页面管理变得像拖拽拼图一样简单![特殊字符]
  • PDF Arranger:5分钟快速上手的免费PDF页面管理终极指南
  • SpringBoot工作流实战:会签、加签、驳回的完整配置与避坑指南
  • 参数求导避坑指南:为什么你的dy/dx总出错?7个常见错误排查清单
  • ncmppGui:解锁NCM音乐格式的桌面利器
  • 多模态大模型能效跃迁实战手册(NVIDIA/TPU双平台适配版):从FP16量化到跨模态缓存复用的8步闭环优化
  • 实战避坑:解决TwinCAT3 ADS路由添加失败与错误代码1861(附adstool命令详解)
  • 哔咔漫画下载器:3步构建你的个人离线漫画图书馆 [特殊字符]
  • 从理论到实测:压控电压源二阶LPF中,反馈电阻Rf为何是调节Q值的关键?一个实验讲透
  • 结合空间注意力与通道注意力的YOLOv5双注意力优化:让目标检测精度再上新台阶
  • Knative弹性伸缩终极指南:从零副本到智能扩缩容的完整解析
  • 手把手教你用LTspice仿真峰值电流模式BUCK电路(含传递函数分析)
  • 开源可部署!百川2-13B-4bits量化版一键镜像教程:免conda/免pip,Supervisor自动管理
  • win11电脑无法打开keil5破解软件
  • Nature更正|人类免疫健康图谱
  • StreamCap:多平台直播流自动录制工具,让你的直播收藏从未如此简单
  • 5分钟掌握PPTist:浏览器中打造专业演示文稿的完整指南