• 周六. 7月 2nd, 2022

5G编程聚合网

5G时代下一个聚合的编程学习网

热门标签

leetcode 20

admin

11月 28, 2021

骚气冲天的代码:

python

 原题:

给定一个只包括 ‘(‘,’)’,'{‘,’}’,'[‘,’]’ 的字符串 s ,判断字符串是否有效。

有效字符串需满足:

左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/valid-parentheses
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

 1 class Solution:
 2     def isValid(self, s: str) -> bool:
 3         dic = {'(':')','[':']','{':'}','?':'?'} #其中的 '?':'?' 是为了pop出了'?'时,dic[stack.pop()]不报错
 4  #放入一个问号就是为了在没有压栈动作时或者所有压栈已经被出栈对应完后,pop不为空,要不会出现stack.pop()超过边界. 
 5         stack=['?']  
 6         for c in s:
 7             if c in dic:
 8                 stack.append(c)
 9             elif dic[stack.pop()]!=c :return False
10         return len(stack)==1

发表评论

您的电子邮箱地址不会被公开。