返回顶部

20-Stack最典型例

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

有效字符串需满足:

  1. 左括号必须用相同类型的右括号闭合。
  2. 左括号必须以正确的顺序闭合。
  3. 每个右括号都有一个对应的相同类型的左括号。

 

复制代码
class Solution(object):
    def isValid(self, s):
        """
        :type s: str
        :rtype: bool
        """
        temp = list()
        length = len(s)
        left = ['(','{','[']
        for i in range(length):
            if s[i] in left:
                temp.append(s[i])
            else:
                if  not temp:
                    return False
                elif s[i] == ')':
                    if temp[-1] == '(':
                        temp.pop()
                    else:
                        return False
                elif s[i] == '}':
                    if temp[-1] == '{':
                        temp.pop()
                    else:
                        return False
                elif s[i] == ']':
                    if temp[-1] == '[':
                        temp.pop()
                    else:
                        return False
        if len(temp):
            return False
        else:
            return True
复制代码

算是第一次用Py实现栈

posted @   YuhangLiuCE  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示