题目描述
写一段代码,判断一个包括’{‘,’[‘,’(‘,’)’,’]’,’}’的表达式是否合法(注意看样例的合法规则。)
给定一个表达式A,请返回一个bool值,代表它是否合法。
测试样例:
“[a+b*(5-4)]{x+b+b(({1+2)}}”
返回:true
class ChkExpression {
public boolean chkLegal(String A) {
int a = 0, b = 0, c = 0;
for (int i = 0; i < A.length(); i++) {
char x = A.charAt(i);
if (x == '{')
a++;
else if (x == '[')
b++;
else if (x == '(')
c++;
else if (x == '}')
a--;
else if (x == ']')
b--;
else if (x == ')')
c--;
}
if (a != 0 || b != 0 || c != 0)
return false;
return true;
}
}