leetcode中等1190反转每对括号间的子串
Posted qq_40707462
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode中等1190反转每对括号间的子串相关的知识,希望对你有一定的参考价值。
思路:
使用栈记录左括号的位置,每遇到一个右括号,就取出栈里最后一个左括号,反转中间部分
class Solution:
def reverseParentheses(self, s: str) -> str:
def reverse(arr,left,right):
while left<right:
arr[left],arr[right]=arr[right],arr[left]
right-=1
left+=1
arr=list(s)
stack=[]
res=""
for i in range(len(arr)):
if arr[i]=="(":
stack.append(i)
if arr[i]==")":
reverse(arr,stack.pop()+1,i-1)
for c in arr:
if c!="(" and c!=")":
res+=c
return res
以上是关于leetcode中等1190反转每对括号间的子串的主要内容,如果未能解决你的问题,请参考以下文章