LeetCode-20 Valid Parentheses

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_30986521/article/details/80931880

题目链接

用栈括号匹配

class Solution {
public:
    bool isOK(char x, char y)
    {
        if (x == '(' && y == ')')
        {
            return true;
        }
        else if (x == '[' && y == ']')
        {
            return true;
        }
        else if (x == '{' && y == '}')
        {
            return true;
        }
        return false;
    }
    bool isValid(string s) {
        int len = s.length();
        if (len == 0) return true;
        
        vector<char> v;
        
        for (int i = 0; i < len; i++)
        {
            if (s[i] == '(' || s[i] == '[' || s[i] == '{')
            {
                v.push_back(s[i]);
            }
            else
            {
                if (v.size() == 0) return false;
                char ch = v[v.size() - 1];
                v.pop_back();
                if (!isOK(ch, s[i]))       
                {
                    return false;
                }
            }
            
        }
        return v.empty();
    }
};

猜你喜欢

转载自blog.csdn.net/qq_30986521/article/details/80931880