Valid Parentheses
Given a string containing just the characters '('
, ')'
,
'{'
, '}'
, '['
and ']'
, determine if the input string is valid.
The brackets must close in the correct order, "()"
and "()[]{}"
are all valid but
"(]"
and "([)]"
are not.
Java代码:
public class Solution {
public boolean isValid(String s) {
if (s.length() == 0 || s.length() % 2 == 1)
return false;
if (s.length() == 2) {
if (s.equals("{}") || s.equals("[]") || s.equals("()"))
return true;
else
return false;
}
for (int i = 0; i < s.length() - 1; i++) {
if (s.substring(i, i + 2).equals("()") || s.substring(i, i + 2).equals("{}")
|| s.substring(i, i + 2).equals("[]")) {
if (i == 0)
return isValid(s.substring(2));
else if (i == s.length() - 2)
return isValid(s.substring(0, s.length() - 2));
else
return isValid(s.substring(0, i) + s.substring(i + 2));
}
}
return false;
}
}