题解 | #有效括号序列#

有效括号序列

https://www.nowcoder.com/practice/37548e94a270412c8b9fb85643c8ccc2

class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param s string字符串 
     * @return bool布尔型
     */
    bool isValid(string s) 
    {
        // write code here
        if (s.size() % 2 == 1)
        {
            return false;
        }

        map<char,char> data = {
            {'}','{'},
            {']','['},
            {')','('}
        };

        stack<char> left;

        for (int i = 0;i < s.size();i++)
        {
            if (s[i] == '(' || s[i] == '[' || s[i] == '{')
            {
                left.push(s[i]);
            }
            else if (s[i] == ')' || s[i] == ']' || s[i] == '}')
            {
                if (!left.empty())
                {
                    char temp = left.top();
                    if (temp == data[s[i]])
                    {
                        left.pop();
                    }
                }
            }
        }
        if(left.empty())
        {
            return true;
        }
        else 
        {
            return false;
        }
    }
};

全部评论

相关推荐

努力学习的小绵羊:我反倒觉得这种挺好的,给不到我想要的就别浪费大家时间了
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务