题目浅析

  • 想查看原题可以点击题目链接

  • 简单地说,就是给一个字符串,字符串中有括号和其它 ASCII 字符,求其中被括号嵌套最深的层数。

思路分享

  • 遇到括号、嵌套这种关键词,往往与栈相关,而且由于本题栈内的元素比较单一,所以可以把栈抽象成数值,遇到括号左部+1,右部-1,最后记录数值最大值即可。

代码解答(强烈建议自行解答后再看)

  • 参考题解
1
2
3
4
5
6
7
8
9
10
11
12
class Solution:
def maxDepth(self, s: str) -> int:
max_depth = 0
depth = 0
for c in s:
if c == '(':
depth += 1
max_depth = max(max_depth, depth)
elif c == ')':
depth -= 1

return max_depth