python 有效的括号的实现代码示例

yipeiwu_com6年前Python基础

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

有效字符串需满足:

左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
注意空字符串可被认为是有效字符串。

示例 1:

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

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

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

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

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

注意此处所用代码为python3

class Solution:
  def pipei(self,m:str,c:str) -> bool:
    if m=='(' and c==')':
      return True
    elif m=='[' and c==']':
      return True
    elif m+c == '{}':
      return True
    else :
      return False
  def isValid(self, s: str) -> bool:
    lens = len(s)
    if lens == 0 :
      return True
    if s[0]==')' or s[0]==']' or s[0]=='}' :
      return False
    lis = []
    lis.append(s[0])
    for i in range(1,lens) :
      if len(lis) :
        tmp = lis.pop()
        if self.pipei(tmp,s[i]) :
          pass
        else :
          lis.append(tmp)
          lis.append(s[i])
      else :
        lis.append(s[i])
    if len(lis) :
      return False
    return True

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python使用turtle绘制国际象棋棋盘

python使用turtle绘制国际象棋棋盘

本文实例为大家分享了python使用turtle画国际象棋棋盘的具体代码,供大家参考,具体内容如下 使用的方法是每一个小格每一个小格的画 import turtle for i in...

Python3标准库总结

Python3标准库 操作系统接口 os模块提供了不少与操作系统相关联的函数。 >>> import os >>> os.getcwd()...

numpy.array 操作使用简单总结

import numpy as np numpy.array 常用变量及参数 dtype变量,用来存放数据类型, 创建数组时可以同时指定。 shape变量, 存放数组的大...

python实现整数的二进制循环移位

python实现整数的二进制循环移位

题目:如何在python中实现整数的二进制循环移位? 概述 在python中,可以通过<<以及>>运算符实现二进制的左移位以及右移位,然而并没有实现循环移位的运算...

详解Python中的内建函数,可迭代对象,迭代器

详解Python中的内建函数,可迭代对象,迭代器

Python中的内建函数和可迭代对象,迭代器 求值标识 id() #标识id 返回对象的唯一标识,CPython返回内存地址 hash() #哈希, 返回对象的哈希值 le...