题解 | #有效括号序列#
有效括号序列
http://www.nowcoder.com/practice/37548e94a270412c8b9fb85643c8ccc2
class Solution { public: /** * * @param s string字符串 * @return bool布尔型 */ bool isValid(string s) { // write code here vector<char> vec; vec.clear();//clean up dirty data int len = s.length(); char c; for(int i = 0; i < len; i++){ if(s[i] == '(' || s[i] == '{' || s[i] == '['){ vec.push_back(s[i]); }else if(vec.size() != 0){//防止第一个就是)、}、] switch (s[i]) { case ')' :{ c = vec.back(); vec.pop_back(); if(c != '('){ return false; } break; } case '}' :{ c = vec.back(); vec.pop_back(); if(c != '{'){ return false; } break; } case ']' :{ c = vec.back(); vec.pop_back(); if(c != '['){ return false; } break; } default: break; } }else{ return false; } } if(vec.size() == 0){//括号全匹配了 return true; }else{ return false; } } };