对于一个字符串,请设计一个算法,判断其是否为一个合法的括号串。
给定一个字符串A和它的长度n,请返回一个bool值代表它是否为一个合法的括号串
测试样例:
“( ( ) ( ) )”, 6 返回:true
“()a()()”, 7 返回false
“()(()()”, 7 返回false
public class Test {
public static void main(String[] args) {
System.out.println(chkParenthesis("()()()()(a", 10));
}
public static boolean chkParenthesis(String A, int n) {
if (n%2 == 1)
{
return false;
}
char[] arr = A.toCharArray();
int left = 0;
int right = 0;
for (char ch : arr)
{
if (ch == '(')
{
left++;
}
if (ch == ')')
{
right++;
}
}
if (left == right)
{
return true;
}
return false;
}
}