题解 | #合法括号序列判断#
合法括号序列判断
http://www.nowcoder.com/practice/d8acfa0619814b2d98f12c071aef20d4
主要考虑括号需要成对出现,在调用 stack.pop() 出栈的时候,未考虑到栈空了的情况,特此记录一下。
import java.util.*;
public class Parenthesis {
public boolean chkParenthesis(String A, int n) {
// write code here
if (n == 0) {
return false;
}
Stack<String> stack = new Stack<>();
String[] c = A.split("");
for (int i = 0; i < n; i++) {
if ("(".equals(c[i])) {
stack.push(String.valueOf(c[i]));
} else if (")".equals(c[i])) {
if (stack.size() > 0) stack.pop();
else return false;
} else {
return false;
}
}
if (stack.size() > 0 ){
return false;
}
return true;
}
}