class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param s string字符串
* @return bool布尔型
*/
bool isValid(string s) {
// write code here
vector<char> vecChar;
bool valid = true;
for(string::size_type i = 0; i < s.size(); ++i)
{
if('(' == s[i] || '[' == s[i] || '{' == s[i])
{
vecChar.push_back(s[i]);
}
else if (')' == s[i])
{
if(!vecChar.empty() && '(' == vecChar[vecChar.size() - 1])
{
vecChar.pop_back();
}
else
{
valid = false;
break;
}
}
else if (']' == s[i])
{
if(!vecChar.empty() && '[' == vecChar[vecChar.size() - 1])
{
vecChar.pop_back();
}
else
{
valid = false;
break;
}
}
else if ('}' == s[i])
{
if(!vecChar.empty() && '{' == vecChar[vecChar.size() - 1])
{
vecChar.pop_back();
}
else
{
valid = false;
break;
}
}
}
if(valid && !vecChar.empty())
{
valid = false;
}
return valid;
}
};