题目描述
题解
class Solution {
public:
bool isValid(string s) {
if (s.size() == 0) return true;
map<char, char> m;
m[')'] = '(';
m[']'] = '[';
m['}'] = '{';
stack<char> s_stack;
for (int i = 0; i < s.size(); ++i) {
if (s[i] == '(' || s[i] == '{' || s[i] == '[') s_stack.push(s[i]);
else {
if (s_stack.empty() || s_stack.top() != m[s[i]]) return false;
s_stack.pop();
}
}
if (s_stack.empty()) return true;
else return false;
}
};