1614. 括号的最大嵌套深度(2021.02.14 leetCode刷题记)
难度系数:简单
1.题目描述
2.解题思路
思路: 用栈去实现,时间复杂度为O(N),空间复杂度O(N)
申请一个栈,然后依次遍历字符串,如果遇到左括号,那么将其压入到栈中,如果遇到右括号,那么将左括号从栈中弹出。如果遇到非括号的字符,那么继续。按照这样的思路去便利,那么在每次的弹栈之前,栈中所存的左括号最多的个数,即是最大的括号嵌入的深度。
具体代码如下:
class Solution:
def maxDepth(self, s: str) -> int:
if len(s)==0 or s==None:
return 0
res = 0
stack = []
for char in s:
res = max(res,len(stack))
if char=="(":
stack.append(char)
elif char ==")":
stack.remove(stack[-1])
else:
continue
return res