使用栈来匹配括号,最后看栈是否为空。
import java.util.*;
public class Solution {
/**
*
* @param s string字符串
* @return bool布尔型
*/
public boolean isValid (String s) {
Stack<Character> stack = new Stack<>();
char[] chars = s.toCharArray();
for(char c : chars){
if(c=='[' || c=='(' || c=='{')
stack.push(c);
else{
if(stack.isEmpty())
return false;
else{
char temp = stack.pop();
if(']'==c && temp!='[')
return false;
if('}'==c && temp!='{')
return false;
if(')'==c && temp!='(')
return false;
}
}
}
return stack.isEmpty();
}
}