LeetCode NO.20 cpp (5.1)

标签:栈,字符串

NO.20 有效的括号
在这里插入图片描述
在这里插入图片描述

class Solution {
public:
    bool isValid(string s) {
              if(s.size() % 2) return false;
        vector<char> vecStack;
        char c;
        for(auto i : s) {
            if(i == '}' || i == ')' || i== ']') {
                if (!vecStack.empty()) c = vecStack[vecStack.size()-1];
                else return false;
                if(i == '}' && c != '{') return false;
                if(i == ')' && c != '(') return false;
                if(i == ']' && c != '[') return false;
                vecStack.pop_back();
            }
            else vecStack.push_back(i);
        }
        return vecStack.empty();               
    }
};

时间复杂度:O(N);
空间复杂度:O(N);
在这里插入图片描述

发布了14 篇原创文章 · 获赞 0 · 访问量 146

猜你喜欢

转载自blog.csdn.net/weixin_45438011/article/details/105019288
5.1