码迷,mamicode.com
首页 > 其他好文 > 详细

Valid Parentheses

时间:2015-09-10 15:45:55      阅读:114      评论: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.

 

 

 1 bool isValid(string s) {
 2       vector<char> sta;  
 3       if(s.size() ==0) return false;  
 4       sta.push_back(s[0]);  
 5       for(int i =1; i< s.size(); i++)  
 6       {  
 7         if(s[i] == ( || s[i] == [ || s[i] == {)  
 8         {  
 9          sta.push_back(s[i]);  
10           continue;  
11         }  
12         char current = sta.back();  
13         if(s[i] == ) && current != ()  
14           return false;  
15         if(s[i] == ] && current != [)  
16           return false;  
17         if(s[i] == } && current != {)  
18           return false;  
19         sta.pop_back();  
20       }  
21       if(sta.size() !=0) return false;  
22       return true;  
23 } 

 

Valid Parentheses

标签:

原文地址:http://www.cnblogs.com/hexhxy/p/4797944.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!