package DataDtructure;
import java.util.Stack;
/**
* ClassName: Solution
* Company:华中科技大学电气学院
* date: 2019/8/23 15:18
* author: YEXIN
* version: 1.0
* since: JDK 1.8
* Description:解决括号匹配问题
*/
public class Solution {
public boolean isValid(String s){
Stack<Character> stack = new Stack<>();
for(int i = 0;i < s.length(); i++){
char c = s.charAt(i);
if(c == '(' || c == '[' || c == '{'){
stack.push(c);
}
else{
if(stack.isEmpty())
return false;
char topChar = stack.pop();
if(c == ')' && topChar != '(')
return false;
if(c == ']' && topChar != '[')
return false;
if(c == '}' && topChar != '{')
return false;
}
}
return stack.isEmpty();
}
}
LeetCode---括号匹配
最新推荐文章于 2025-02-26 18:48:36 发布
本文介绍了一种使用栈数据结构解决括号匹配问题的方法。通过遍历字符串,将左括号压入栈中,遇到右括号则弹出栈顶元素进行匹配检查,最终判断括号是否正确配对。


555

被折叠的 条评论
为什么被折叠?



