链接:合法括号序列判断__牛客网
来源:牛客网
给定一个字符串A和其长度n,请返回一个bool值代表它是否为一个合法的括号串(只能由括号组成)。
测试样例:
"(()())",6
返回:true
测试样例:
"()a()()",7
返回:false
测试样例:
"()(()()",7
返回:false
括号匹配直接用栈
import java.util.*;
public class Parenthesis {
public boolean chkParenthesis(String A, int n) {
// write code here
if(n==0||A==null)return true;
char[] arr=A.toCharArray();
Stack<Character> stack1=new Stack<>();
for(int i=0;i<arr.length;i++){
if(arr[i]=='('){
stack1.push('(');
} else {
if(!stack1.empty()&&stack1.peek()=='('){
stack1.pop();
} else {
return false;
}
}
}
if(stack1.empty()){
return true;
} else {
return false;
}
}
}