当前位置:网站首页>每日一题-有效的括号-0719
每日一题-有效的括号-0719
2022-08-05 05:17:00 【菜鸡程序媛】
题目
给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。
有效字符串需满足:
(1)左括号必须用相同类型的右括号闭合。
(2)左括号必须以正确的顺序闭合。
思路
- 初始化栈,用来存储字符串中的字符
- 如果是左面的符号,则入栈;是右面的符号的话,如果当前的栈顶是和右括号匹配的左括号,则将左括号弹出,相互抵消,否则直接入栈,直接返回false
- 最后判断一下栈是否是空的
代码
class Solution {
public boolean isValid(String s) {
if(s == null || s.length() == 0)
return false;
Stack<Character> stack = new Stack<>();
for(int i = 0; i < s.length(); i ++){
if(s.charAt(i) == '(' || s.charAt(i) == '{' || s.charAt(i) == '['){
stack.push(s.charAt(i));
}else if(s.charAt(i) == ')'){
if(!stack.isEmpty() && stack.peek() == '(')
stack.pop();
else{
stack.push(s.charAt(i));
return false;
}
}else if(s.charAt(i) == '}'){
if(!stack.isEmpty() && stack.peek() == '{')
stack.pop();
else{
stack.push(s.charAt(i));
return false;
}
}else{
if(!stack.isEmpty() && stack.peek() == '[')
stack.pop();
else{
stack.push(s.charAt(i));
return false;
}
}
}
return stack.isEmpty();
}
}
边栏推荐
- 【ts】typescript高阶:typeof使用
- 基于STM32F407的一个温度传感器报警系统(用的是DS18B20温度传感器,4针0.96寸OLED显示屏,并且附带日期显示)
- 电子产品量产工具(5)- 页面系统实现
- 深度学习系列(一)简介、线性回归与成本函数
- Facial Motion Capture 调研
- 基于STM32F407的WIFI通信(使用的是ESP8266模块)
- LeetCode刷题之第24题
- Polygon计算每一个角的角度
- Comparison and summary of Tensorflow2 and Pytorch in terms of basic operations of tensor Tensor
- [Pytorch study notes] 10. How to quickly create your own Dataset dataset object (inherit the Dataset class and override the corresponding method)
猜你喜欢
随机推荐
MaskDistill-不需要标注数据的语义分割
Redis设计与实现(第三部分):多机数据库的实现
深度学习系列(一)简介、线性回归与成本函数
LeetCode刷题之第61题
(oj)原地移除数组中所有的元素val、删除排序数组中的重复项、合并两个有序数组
关于存储IOPS你必须了解的概念
八、响应处理——ReturnValueHandler匹配返回值处理器并处理返回值原理解析
CVPR2020 - 自校准卷积
七、请求处理——Map、Model类型参数处理原理
[Pytorch study notes] 11. Take a subset of the Dataset and shuffle the order of the Dataset (using Subset, random_split)
C语言程序死循环问题解析——变量被修改
UiPath简介
C语言—扫雷的实现
【UiPath2022+C#】UiPath 循环
网管日记:故障网络交换机快速替换方法
SQL (2) - join window function view
【shell编程】第二章:条件测试语句
CVPR2021 - Inception Convolution with Efficient Dilation Search
SQL(1) - Add, delete, modify and search
一个小时教你如何掌握ts基础