您的位置:首页 > 其它

leetcode--Valid Parentheses

2015-05-08 00:40 204 查看
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.

public class Solution {
public boolean isValid(String s) {
if(s.length()==0) return true;
Stack<Character> stack = new Stack<Character>();
int i=0;
do{
char cur = s.charAt(i);
if(stack.size()!=0){
switch(cur){
case ']':
if(stack.peek()=='[') stack.pop();
else stack.add(cur);
break;
case '}':
if(stack.peek()=='{') stack.pop();
else stack.add(cur);
break;
case ')':
if(stack.peek()=='(') stack.pop();
else stack.add(cur);
break;
default:
stack.add(cur);
}
}else{
stack.add(cur);
}
i++;
}while(i!=s.length());
if(stack.size()==0) return true;
else return false;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: