'(' 与 ')'匹配问题
可以使用栈的方式进行匹配,如果栈顶为'(',此时传进来的')',则匹配'('出栈,否则不匹配进行压栈
public static void match(String str) {
Stack<Character> stack = new Stack<Character>();
for (int i = 0; i < str.length(); i++) {
if (stack.empty()){
stack.push(str.charAt(i));
}else{
if(stack.peek()=='('&&str.charAt(i)==')'){//匹配()
stack.pop();//出栈
}else{//不匹配
stack.push(str.charAt(i));//压栈
}
}
}
for (char c : stack){
System.out.println(c);
}
System.out.println("Not Match Size:"+stack.size());
}