标签:
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.
1 public class Solution { 2 public boolean isValid(String s) { 3 Stack stack=new Stack(); 4 for(int i=0;i<s.length();i++) 5 { 6 char ch=s.charAt(i); 7 if(ch==‘(‘||ch==‘[‘||ch==‘{‘) 8 { 9 stack.push(ch); 10 } 11 else 12 { 13 if(!stack.isEmpty()) 14 { 15 if(isEqual((char)stack.peek(),ch)) 16 { 17 stack.pop(); 18 } 19 else 20 return false; 21 } 22 else 23 return false; 24 } 25 } 26 return stack.isEmpty()?true:false; 27 } 28 public boolean isEqual(char c1,char c2) 29 { 30 if(c1==‘[‘&&c2==‘]‘)return true; 31 else if(c1==‘(‘&&c2==‘)‘)return true; 32 else if(c1==‘{‘&&c2==‘}‘)return true; 33 return false; 34 } 35 }
标签:
原文地址:http://www.cnblogs.com/sweetculiji/p/4224920.html