import java.util.Scanner;
import java.util.Stack;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
Stack<Character> stack = null;
while (n != 0) {
String str = sc.next();
if (str.length() % 2 == 1) {
System.out.println("No");
} else {
stack = new Stack<Character>();
for (int i = 0; i < str.length(); i++) {
if (stack.isEmpty()) {
stack.push(str.charAt(i));
} else if (stack.peek() == '[' && str.charAt(i) == ']'
|| stack.peek() == '(' && str.charAt(i) == ')') {
stack.pop();
} else {
stack.push(str.charAt(i));
}
}
System.out.println(stack.isEmpty() ? "Yes" : "No");
}
n--;
}
}
}南阳理工OJ---括号配对问题
最新推荐文章于 2018-12-21 16:22:25 发布
本文介绍了一个使用Java实现的简单算法,该算法通过Stack数据结构来判断字符串中的括号是否正确匹配。对于输入的每组数据,程序会检查括号序列是否平衡,即每个开括号都有一个对应的闭括号并且位置正确。
402

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



