1614. 括号的最大嵌套深度
Posted 沧夜2021
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1614. 括号的最大嵌套深度相关的知识,希望对你有一定的参考价值。
1614. 括号的最大嵌套深度
题源
https://leetcode-cn.com/problems/maximum-nesting-depth-of-the-parentheses/
题目内容
原文的题目解释太绕了
反而有点难以理解
给你一个 有效括号字符串 s,返回该字符串的 s 嵌套深度 。
即返回字符串中某个数字被括号括住的最深深度。
示例
示例 1:
输入:s = "(1+(2*3)+((8)/4))+1"
输出:3
解释:数字 8
在嵌套的 3
层括号中.
示例 2:
输入:s = "(1)+((2))+(((3)))"
输出:3
示例 3:
输入:s = "1+(2*3)/(2-1)"
输出:1
示例 4:
输入:s = "1"
输出:0
提示:
-
1 <= s.length <= 100
-
s
由数字0-9
和字符'+'、'-'、'*'、'/'、'('、')'
组成 -
题目数据保证括号表达式
s
是有效的括号表达式
思路
不必使用栈来写,直接按字符串的顺序从左到右遍历就可以了
-
定义计数
acount
和 答案ans
-
每碰到一个
(
,acount
就+1
-
每碰到一个
)
,acount
就-1
-
ans
记录acount
加加减减过程中的最大值
答案
class Solution
public:
int maxDepth(string s)
int n =s.size();
int acount = 0;
int ans = 0;
for(int i = 0;i<n;i++)
if(s[i]=='(')
ans = max(acount+=1,ans);
else if(s[i]==')')
acount--;
return ans;
;
以上是关于1614. 括号的最大嵌套深度的主要内容,如果未能解决你的问题,请参考以下文章