020-valid parentheses

valid parentheses

Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.

The brackets must close in the correct order, "()" and "()[]{}" are all valid but "(]" and "([)]" are not.

注意算法,稍微多动一下脑筋
class Solution(object):
    def isValid(self, s):
        """
        :type s: str
        :rtype: bool
        """
        d = {'{':'}','[':']','(':')'}

        q = list()
        for i in s:
            if i in d.keys():
                q.append(i)
            else
                if len(q) > 0 and d[q.pop()] == i:
                    continue
                else:
                    return False

        return len(q) == 0

class Solution:
    def isValid(self, s: str) -> bool:
        d = {')': '(', ']':'[', '}':'{'}
        res = list()
        
        for i in s:
            if i in d and res and res[-1] == d[i]:
                res.pop()
            else:
                res.append(i)
        return len(res) == 0
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容