//比较麻烦的写法但是能过
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param s string字符串
* @return bool布尔型
*/
stack<int> st;
bool isValid(string s) {
int flag = 1;
for (int i = 0; i < s.length(); i++) {
if (s[i] == '[' || s[i] == '(' || s[i] == '{') {
st.push(s[i]);
} else if (s[i] == ')') {
if (st.empty()) {
return false;
} else {
if (st.top() == '(') {
st.pop();
} else {
return false;
}
}
} else if (s[i] == ']') {
if (st.empty()) {
return false;
} else {
if (st.top() == '[') {
st.pop();
} else {
return false;
}
}
} else if (s[i] == '}') {
if (st.empty()) {
return false;
} else {
if (st.top() == '{') {
st.pop();
} else {
return false;
}
}
}
}
if(flag==1)
{
if(st.empty())
{
return true;;
}
else {
return false;
}
}
return true;
}
};

京公网安备 11010502036488号