题解 | #牛群的秘密通信#
牛群的秘密通信
https://www.nowcoder.com/practice/f0047999594d4cd39f85d7347c6941af
所用知识
栈、字符串
所用语言
Java
解题思路
依次判断字符,符合条件的放入栈中
如果不符合条件,取出栈顶元素,再次判断即可
完整的代码
public boolean is_valid_cow_communication (String s) {
// write code here
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 (stack.isEmpty()) return false;
Character pop = stack.pop();
if ((s.charAt(i) == '}' && pop != '{' || s.charAt(i) == ')' && pop != '(' ||
s.charAt(i) == ']' && pop != '[')) {
return false;
}
}
}
return true;
}
#牛群的秘密通信#