您的位置:首页 > 其它

20. Valid Parentheses

2016-03-18 21:20 316 查看
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.

Subscribe to see which companies asked this question
也是上古时期做的题了……其实现在要做就是一个stack的事,看到左括号就入栈,右括号就出栈,看是不是相对应的就好。以前的这种方法可以弃了。

public class Solution {
<span style="white-space:pre">	</span>public boolean isValid(String s) {

<span style="white-space:pre">		</span>String str = "";
<span style="white-space:pre">		</span>int len = s.length();
<span style="white-space:pre">		</span>for (int i = 0; i < len; i++) {
<span style="white-space:pre">			</span>// if(str.length()==0&&(s.charAt(i)==')'||s.charAt(i)=='}'||s.charAt(i)==']'))retu
4000
rn
<span style="white-space:pre">			</span>// false;
<span style="white-space:pre">			</span>if (s.charAt(i) == '(')
<span style="white-space:pre">				</span>str += '(';
<span style="white-space:pre">			</span>if (s.charAt(i) == ')') {
<span style="white-space:pre">				</span>if (str.length() == 0 || str.charAt(str.length() - 1) != '(')
<span style="white-space:pre">					</span>return false;
<span style="white-space:pre">				</span>else
<span style="white-space:pre">					</span>str = str.substring(0, str.length() - 1);
<span style="white-space:pre">			</span>}
<span style="white-space:pre">			</span>if (s.charAt(i) == '[')
<span style="white-space:pre">				</span>str += '[';
<span style="white-space:pre">			</span>if (s.charAt(i) == ']') {
<span style="white-space:pre">				</span>if (str.length() == 0 || str.charAt(str.length() - 1) != '[')
<span style="white-space:pre">					</span>return false;
<span style="white-space:pre">				</span>else
<span style="white-space:pre">					</span>str = str.substring(0, str.length() - 1);
<span style="white-space:pre">			</span>}
<span style="white-space:pre">			</span>if (s.charAt(i) == '{')
<span style="white-space:pre">				</span>str += '{';
<span style="white-space:pre">			</span>if (s.charAt(i) == '}') {
<span style="white-space:pre">				</span>if (str.length() == 0 || str.charAt(str.length() - 1) != '{')
<span style="white-space:pre">					</span>return false;
<span style="white-space:pre">				</span>else
<span style="white-space:pre">					</span>str = str.substring(0, str.length() - 1);
<span style="white-space:pre">			</span>}
<span style="white-space:pre">		</span>}
<span style="white-space:pre">		</span>if (str.length() == 0)
<span style="white-space:pre">			</span>return true;
<span style="white-space:pre">		</span>return false;
<span style="white-space:pre">	</span>}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: