import java.util.*;
public class Solution {
/**
*
* @param s string字符串
* @return bool布尔型
*/
public boolean isValid (String s) {
if (s == null || s.length() == 0) {
return false;
}
Stack<Character> stack = new Stack<>();
char[] chars = s.toCharArray();
for (int i = 0; i < chars.length; i++) {
if ('(' == chars[i]) {
stack.push(')');
} else if ('[' == chars[i]) {
stack.push(']');
} else if ('{' == chars[i]) {
stack.push('}');
} else {
if (stack.isEmpty() || stack.pop() != chars[i]) {
return false;
}
}
}
//最后可能栈里还有元素 代表非合法括号序列
return stack.isEmpty();
}
}