首页 > 其他 > 详细

LeetCode 20 Valid Parentheses

时间:2015-06-16 01:06:33      阅读:202      评论:0      收藏:0      [点我收藏+]

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 static boolean isValid(String s) {
         Stack<Character> gt=new Stack<Character>();  
       int i=0;
       
         
       while(i != s.length())  
       {  
           char c =s.charAt(i);  
           if (c != ‘)‘ && c != ‘}‘ && c != ‘]‘)  
           {  
               gt.push(c);  
           }  
           else  
           {  
               if (gt.size() == 0)  
                  return false;  
 
               char pre = gt.lastElement();  
               switch(c)  
               {  
               case ‘)‘:  
                   if (pre == ‘(‘)  
                     gt.pop();  
                   else   
                     return false;  
                   break;  
                       
               case ‘}‘:  
                   if (pre == ‘{‘)  
                     gt.pop();  
                   else   
                     return false;  
                   break;  
                     
               case ‘]‘:  
                   if (pre == ‘[‘)  
                     gt.pop();  
                   else   
                     return false;  
                   break;  
               }  
           }  
           ++i;  
       }  
       if (gt.size() == 0)  
          return true;  
       else return false;  
   }  

}
View Code

 

LeetCode 20 Valid Parentheses

原文:http://www.cnblogs.com/gonewithgt/p/4579556.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!