20. 有效的括號

給定一個只包括 '(',')','{','}','[',']' 的字符串,判斷字符串是否有效。

有效字符串需滿足:

1.左括號必須用相同類型的右括號閉合。
2.左括號必須以正確的順序閉合。
注意空字符串可被認為是有效字符串。

示例 1:

輸入: "()"
輸出: true
示例 2:

輸入: "()[]{}"
輸出: true
示例 3:

輸入: "(]"
輸出: false
示例 4:

輸入: "([)]"
輸出: false
示例 5:

輸入: "{[]}"
輸出: true

class Solution(object):
    def isValid(self, s):
        """
        :type s: str
        :rtype: bool
        """
        result=[]
        flag=0
        d={'(': -1, ')':1, '{':-2, '}':2, '[':-3, ']':3}
        for i in s:
            if d[i]<0:
                result.append(d[i])
            else:
                if not len(result) or result.pop()+d[i] != 0:
                    flag=1
        if flag == 0 and not result:
            return True
        else:
            return False
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 20.有效的括號 給定一個只包括'(',')','{','}','[',']'的字符串,判斷字符串是否有效。 有效...
    不愛去冒險的少年y閱讀 401評論 0 0
  • 給定一個只包括 '(',')','{','}','[',']' 的字符串,判斷字符串是否有效。 有效字符串需滿足:...
    閉門造折閱讀 408評論 0 0
  • 題目描述 給定一個只包括 '(',')','{','}','[',']' 的字符串,判斷字符串是否有效。 有效字符...
    云胡同學閱讀 399評論 0 0
  • 20180923-摘抄自20. 有效的括號 給定一個只包括 '(',')','{','}','[',']' 的字符...
    moralok閱讀 291評論 0 0
  • “隱約雷鳴,陰霾天空,但盼風雨來,能留你在此。” 新海誠在影片中給人營造了一個唯美的東京:黑板上掉落的粉筆屑,緊張...
    c3070cbc8b50閱讀 2,654評論 0 0