Java实现 LeetCode 20 有效的括号
2023-09-14 08:58:07 时间
20. 有效的括号
给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。
有效字符串需满足:
左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
注意空字符串可被认为是有效字符串。
示例 1:
输入: “()”
输出: true
示例 2:
输入: “()[]{}”
输出: true
示例 3:
输入: “(]”
输出: false
示例 4:
输入: “([)]”
输出: false
示例 5:
输入: “{[]}”
输出: true
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/valid-parentheses
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
class Solution {
public boolean isValid(String s) {
Stack<Character>stack = new Stack<Character>();
for(char c: s.toCharArray()){
if(c=='(')stack.push(')');
else if(c=='[')stack.push(']');
else if(c=='{')stack.push('}');
else if(stack.isEmpty()||c!=stack.pop())return false;
}
return stack.isEmpty();
}
}
相关文章
- Java实现 LeetCode 838 推多米诺(暴力模拟)
- Java实现 LeetCode 779 第K个语法符号(递归)
- Java实现 LeetCode 763 划分字母区间(暴力)
- Java实现 LeetCode 729 我的日程安排表 I(二叉树)
- Java实现 LeetCode 700 二叉搜索树中的搜索(遍历树)
- Java实现 LeetCode 662 二叉树最大宽度(递归)
- Java实现 LeetCode 640 求解方程(计算器的加减法计算)
- Java实现 LeetCode 598 范围求和 II(最小值相乘)
- Java实现 LeetCode 519 随机翻转矩阵
- Java实现 LeetCode 467 环绕字符串中唯一的子字符串
- Java实现 LeetCode 474 一和零
- Java实现 LeetCode 454 四数相加 II
- Java实现 LeetCode 415 字符串相加
- Java实现 LeetCode 401 二进制手表
- Java实现 LeetCode 373 查找和最小的K对数字
- Java实现 LeetCode 336 回文对
- Java实现 LeetCode 304 二维区域和检索 - 矩阵不可变
- Java实现 LeetCode 287 寻找重复数
- Java实现 LeetCode 240 搜索二维矩阵 II(二)
- Java实现 LeetCode 211 添加与搜索单词 - 数据结构设计
- Java实现 LeetCode 152 乘积最大子序列
- Java实现 LeetCode 99 恢复二叉搜索树
- Java实现 LeetCode 29 两数相除
- Java实现 LeetCode 240 搜索二维矩阵 II
- 【JAVA】 01-Java基础知识