利用FILO的STACK 一切都是那么美好
class Solution {
public boolean isValid(String s) {
Stack<Character> stack = new Stack<>();
for(int i = 0 ;i<s.length();i++)
{
char ch = s.charAt(i);
if(ch=='('||ch=='['||ch=='{')
stack.push(ch);
else if(ch==')')
{
if(stack.isEmpty())
return false;
if(stack.pop()!='(')
return false;
}
else if (ch==']')
{
if(stack.isEmpty())
return false;
if(stack.pop()!='[')
return false;
}
else if (ch=='}')
{
if(stack.isEmpty())
return false;
if(stack.pop()!='{')
return false;
}
else
{
return false;
}
}
return stack.isEmpty();
}
}