您的位置:首页 > 其它

Leetcode: Valid Parentheses

2013-01-18 22:18 211 查看
class Solution {
public:
bool isValid(string s) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
if(s.size()<2)
return false;
stack<char> stk;
for(int i=0;i<s.size();++i){
if(isLeft(s[i]))
stk.push(s[i]);
else {
if(stk.empty())
return false;
char& c=stk.top();
stk.pop();
if(match(c,s[i])==false)
return false;
}
}
if(stk.empty()){
return true;
} else return false;
}
bool isLeft(const char& c){
return c=='('||c=='{'||c=='[';
}
bool match(const char& c, const char& d){
if(c=='(')
return d==')';
if(c=='[')
return d==']';
if(c=='{')
return d=='}';
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: