系列文章目录
前言
一、NC175合法的括号字符串
描述: 给定一个字符串s,字符串s只包含以下三种字符:(, * , ) ,请你判断 s是不是一个合法的括号字符串。合法括号字符串有如下规则:
1.左括号’(‘必须有对应的右括号’)’
2.右括号’)‘必须有对应的左括号’(’
3.左括号必须在对应的右括号前面
4.*可以视为单个左括号,也可以视为单个右括号,或者视为一个空字符
5.空字符串也视为合法的括号字符串
数据范围:
1<=s.length<=100,1<=s.length<=100
示例1
输入:“()()”
返回值:
true
示例2
输入:“(()"
返回值:
true
示例3
输入:"()”
返回值:
true
示例4
输入:“(((*)”
返回值:
false
二、sound code
代码如下(示例):
class Solution:
def isValidString(self , s: str) -> bool:
# write code here
n = len(s)
flag = 0
for i in range(n):
if s[i] == ')':
flag -= 1
if flag < 0:
return False
else:
flag += 1
flag = 0
for i in range(n-1,-1,-1):
if s[i] == '(':
flag -= 1
if flag < 0:
return False
else:
flag += 1
return True
s = Solution()
print(s.isValidString(input()))
总结
分享:
我们不仅要把握机会,更要创造机会。走向成功的人,绝不是一个逍遥自在、没有任何压力的观光客,而是一个积极投入的参与者。他们审时度势,见缝插针,以寻求有利自身发展的机会。
本文介绍了如何判断一个包含括号和星号的字符串是否合法,根据给定的规则,如括号匹配、星号的灵活性等。提供了一个Python代码示例,用于检查字符串的合法性,并给出了几个测试用例。文章强调了在解决问题时积极参与和主动创造机会的重要性。
346

被折叠的 条评论
为什么被折叠?



