文章目录:
题目:
给定一个只包括 ‘(‘,‘)‘,‘{‘,‘}‘,‘[‘,‘]‘ 的字符串,判断字符串是否有效。
有效字符串需满足:
左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
注意空字符串可被认为是有效字符串。
示例 1:
输入: "()"
输出: true
示例 2:
输入: "()[]{}"
输出: true
示例 3:
输入: "(]"
输出: false
示例 4:
输入: "([)]"
输出: false
示例 5:
输入: "{[]}"
输出: true
脚本一:【用时:32ms】
class Solution: def isValid(self, s: str) -> bool: zidian1 = {‘)‘:‘(‘,‘]‘:‘[‘,‘}‘:‘{‘} lists = list(s) flag = ‘bb‘ i = 0 while lists: try: lists[i] except IndexError: return(False) num1 = len(lists) if lists[i] in zidian1: if lists[i-1] and lists[i-1] == zidian1[lists[i]]: del lists[i] del lists[i-1] i -= 1 else: return(False) flag = ‘xx‘ else: i += 1 if i >= num1: flag = ‘xx‘ return(False) if flag == ‘bb‘: return(True)
脚本一逻辑:
原文:https://www.cnblogs.com/mailong/p/12037774.html