这道题是找一个字符串中的括号是不是都是成对的,如果是返回true,否则返回false
其实都是acm入门题的难度,换个语言写熟练熟练
我的比较麻烦了,看到一个左括号,从后面找右括号,有的话就把他俩一起排除,如果最后还剩括号的话就是不成对的
def valid_parentheses(string):
string=list(string)
i=0
while i<len(string):
if string[i]=='(' :
j=i
flag=0
while j<len(string):
if string[j]==')':
string[i]='0'
string[j]='0'
flag=1
break
j+=1
if flag==0 :
return False
i=i+1
i=0
while i<len(string):
if string[i]=='(' or string[i]==')':
return False
i+=1
return True麻烦的一比……
另附大神代码,这个代码堆得太好了,就是拐个弯的事,看我搞得多复杂……
唉……都是码农差距这么大
def valid_parentheses(string):
cnt = 0
for char in string:
if char == '(': cnt += 1
if char == ')': cnt -= 1
if cnt < 0: return False
return True if cnt == 0 else False
本文介绍了一种检查字符串中括号是否正确配对的算法,并提供了两种实现方式:一种较为复杂的方法,通过遍历查找配对的括号并移除;另一种简洁的方法,使用计数器跟踪括号状态。
927

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



