java判断括号是否闭合_【python每日一练】有效括号
生活随笔
收集整理的這篇文章主要介紹了
java判断括号是否闭合_【python每日一练】有效括号
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
給定一個只包括 '(',')','{','}','[',']' 的字符串,判斷字符串是否有效。
有效字符串需滿足:
注意空字符串可被認為是有效字符串。
示例 1:
輸入: "()"輸出: true示例 2:
輸入: "()[]{}"輸出: true示例 3:
輸入: "(]"輸出: false示例 4:
輸入: "([)]"輸出: false示例 5:
輸入: "{[]}"輸出: true分析:
解:
class SolutionBracket: def isValid(self, s: str): """ :param s: :return: """ mapps = {')': '(', ']': '[', '}': '{'} stack = [] if len(s) % 2 == 0 and s[0] in mapps.values(): for i in s: if i in mapps.values(): stack.append(i) else: elma = stack.pop() if stack else '#' if elma != mapps[i]: return False else: return False return not stack???if __name__ == '__main__': b = "()[]{}" f = "{{{}" so = SolutionBracket() print(so.isValid(g))拓展
如果字符串是一個類型的括號,可以用計數的方式實現,這個實現比較簡答
解:
class SolutionBracket: def isValid(self, s: str,c:str): """ :param s:傳入的字符串 :param c: 傳入的括號類型如:'(','[','{' :return: """ num=0 for i in s: if i==c: num+=1 else: num-=1 return not numif __name__ == '__main__': b = "()()()" f = "((((())))" so = SolutionBracket() print(so.isValid(f,'(')) 與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的java判断括号是否闭合_【python每日一练】有效括号的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: yii2 请求外部api_[PHP] 基
- 下一篇: python列表片段_Python列表片