1.思路:栈解决法
class Solution {
public:
/**
*
* @param s string字符串
* @return bool布尔型
*/
bool isValid(string s) {
// write code here
int n = s.size();
vector<char> stack = vector<char>();
for(int i=0;i<n;i++) {
char c = s.at(i);
switch( c) {
case '(':
stack.push_back(c);
break;
case '[':
stack.push_back(c);
break;
case '{':
stack.push_back(c);
break;
case ')':
if(stack.empty() || stack.back()!='(') {
return false;
} else {
stack.pop_back();
break;
}
case ']':
if(stack.empty() || stack.back()!='[') {
return false;
} else {
stack.pop_back();
break;
}
case '}':
if(stack.empty() || stack.back()!='{') {
return false;
} else {
stack.pop_back();
break;
}
}
}
return stack.empty();
}
};