- 栈模拟,输入'[','{','('左括号符,在栈中存放其相反的右匹配符']'等 方便判断。
- 当输入是右括号符,该符号肯定与栈顶的符号匹配否则不构成括号序列。
class Solution {
public:
bool isValid(string s) {
int len=s.size();
stack<char> st;
for(int i=0;i<len;i++){
if(s[i]=='(')st.push(')');
else if(s[i]=='[')st.push(']');
else if(s[i]=='{')st.push('}');
else if(st.empty())return false;
else if(st.top()!=s[i])return false;
else st.pop();
}
return st.empty();
}
};
京公网安备 11010502036488号