您的位置:首页 > 其它

[Leetcode] #20 Valid Parentheses

2015-09-02 06:38 337 查看
//#20 Valid Parentheses
//0ms 100%
class Solution {
public:
bool isValid(string s)
{

vector<char> stk;
for(unsigned int i=0; i<s.length(); i++)
{
//cout << "stk current size: " << stk.size() << endl;
if(s[i] == '(' || s[i] == '[' || s[i] == '{')
{
//cout << "Insert\n";
stk.push_back(s[i]);
}
else if(s[i] == ')' || s[i] == ']' || s[i] == '}')
{
//cout << "Delete\n";
if(stk.empty()) return false;

if(stk.back() == '(' && s[i] == ')') stk.pop_back();
else if(stk.back() == '[' && s[i] == ']') stk.pop_back();
else if(stk.back() == '{' && s[i] == '}') stk.pop_back();
else return false;
}
else
{
cout << "Input Invalid\n";
exit(1);
}
}
if(stk.empty()) return true;
else return false;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  leetcode string