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=='}';
}
};
Leetcode: Valid Parentheses
最新推荐文章于 2019-06-19 12:08:47 发布