LeetCode - 1614 - 括号的最大嵌套深度 - Java

文章目录

  • 题目
  • 题目解析
  • 解题思维
  • 代码如下

题目

LeetCode - 1614 - 括号的最大嵌套深度 - Java_第1张图片


题目解析

首先,朋友们不要被题目吓到了。
简单来说:这题就是让你去求 那个字符 - 它身边的括号最多。
计算 有几个括号 包裹它。
比如:
“( a )”: a 字符,只有一个括号包裹它,所以该字符 的 括号最大嵌套深度为 1
“( ( b ) )” b 字符,有两个括号包裹它,所以该字符 的 括号最大嵌套深度为 2
“( ( ( c ) ) )”c 字符,有三个括号包裹它,所以该字符 的 括号最大嵌套深度为 3

多注意:题目题干 和 示例,你就能看出题目的真实意图:
LeetCode - 1614 - 括号的最大嵌套深度 - Java_第2张图片


解题思维

这题我们已经知道它就是计算括号个数的题
难点:如果精确锁定 那个被括号包裹最多的字符。
我的思路:我们直接去遍历字符串,遇到一个 ‘(’ 字符,我们 让count加加一下(整形变量count 【初始值0】 - 用来计算括号嵌套个数)。然后,让count 和 result 比较,取最大值。(整形变量 result - 用来记录 括号的最大嵌套深度 )。
LeetCode - 1614 - 括号的最大嵌套深度 - Java_第3张图片


代码如下

class Solution {
    public int maxDepth(String s) {
        int count = 0;
        int result = 0;
        for(int i = 0;i < s.length();i++){
            if(s.charAt(i)== '('){
                count++;
                result = Math.max(result,count);
            }else if(s.charAt(i) == ')'){
                count--;
            }
        }
        return result;
    }
}

LeetCode - 1614 - 括号的最大嵌套深度 - Java_第4张图片


你可能感兴趣的:(日常练习题,leetcode,java,算法)