您的位置:首页 > 其它

leetcode---Valid Parentheses

2016-01-14 11:40 225 查看
leetcode之四:https://leetcode.com/problems/valid-parentheses/  

求有效的括号匹配:

class Solution {
public:
bool isValid(string s) {
stack<char> str;
for(int i = 0 ; i < s.size();i++)
{
if(s[i] == '(' || s[i] == '{' || s[i] == '[')
str.push(s[i]);
else if(s[i] == ')' )
{
if<span style="color:#ff0000;">(!str.empty()</span> && str.top() == '(')//判断栈是否为空很重要,比如输入为“]”则栈为空。
str.pop();
else
return false;
}
else if(s[i] == ']')
{
if(!str.empty() && str.top() == '[')
str.pop();
else
return false;
}
else if(s[i] == '}')
{
if(!str.empty() && str.top() == '{')
str.pop();
else
return false;
}

}
return str.empty();
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  class leetcode stack