python练习-判断合法括号串

判断合法括号串

  • 题目描述
  • 解题思路
  • python代码实现

题目描述

给定一个字符串A,请设计一个算法,判断其是否为一个合法的括号串。若合法返回True,否则返回False
例:
输入(()())
返回:True
输入:()a()()
返回:False

解题思路

利用栈的思想:
1.遇到(入栈
2.遇到),只要栈不为空就出栈,为空说明不是合法串
3.遇到其他字符串,都不是合法串

python代码实现

# -*- coding:utf-8 -*-

def chkParenthesis(self, A):       
    stackA = []
    for i in A:
        if i == '(':
            stackA.append(i)
        elif i == ')':
            if not stackA:
                return False
            else:
                stackA.pop()
        else:
            return False        
    return True

str = input()
print(chkParenthesis(str))

你可能感兴趣的:(python练习,字符串,python)