首页 > 代码库 > 【leetcode】20. Valid Parentheses
【leetcode】20. Valid Parentheses
@requires_authorization
@author johnsondu
@create_time 2015.7.13 11:03
@url [valid parentheses](https://leetcode.com/problems/valid-parentheses/)
/*****************
* 类别: 栈模拟推断
* 时间复杂度: O(n)
* 空间复杂度: O(n)
****************/
class Solution {
public:
bool isValid(string s) {
stack<char> st;
int len = s.size();
for(int i = 0; i < len; i ++){
if(s[i] == ‘]‘ || s[i] == ‘}‘ || s[i] == ‘)‘){
if(st.empty()){
return false;
}
}
else{
st.push(s[i]);
continue;
}
if(s[i] == ‘]‘){
char ch = st.top();
st.pop();
if(ch != ‘[‘) return false;
continue;
}
if(s[i] == ‘)‘){
char ch = st.top();
st.pop();
if(ch != ‘(‘) return false;
continue;
}
if(s[i] == ‘}‘){
char ch = st.top();
st.pop();
if(ch != ‘{‘) return false;
continue;
}
}
if(st.empty()) return true;
else return false;
}
};
【leetcode】20. Valid Parentheses
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。