
class Solution {
public:
bool isValid(string s) {
stack<int> st;
for (int i = 0; i < s.size(); i++)
{
if (s[i] == '(')
st.push(')');
else if (s[i] == '{')
st.push('}');
else if (s[i] == '[')
st.push(']');
else if (st.empty() || st.top() != s[i])
return false;
else st.pop(); // st.top() == s[i]
}
return st.empty();
}
};
这段代码实现了一个C++函数,用于检查输入字符串中的括号(包括圆括号、大括号和方括号)是否正确匹配。它使用栈数据结构来跟踪打开的括号,并在遇到关闭括号时进行匹配。如果输入字符串中的括号匹配无效,函数将立即返回false;否则,当遍历完整个字符串且栈为空时,返回true,表明括号匹配有效。
1501

被折叠的 条评论
为什么被折叠?



