如果是1种括号,可以简单的使用平衡因子来判断是否是有效括号组合。
java
public boolean valid(char[] current) {
int balance = 0;
for (char c : current) {
if (c == '(') {
++balance;
} else {
--balance;
}
if (balance < 0) {
return false;
}
}
return balance == 0;
}
而如果是2种以上的括号,需要使用栈和hash表来判断