LeetCode 1614 括号的最大嵌套深度

题目描述:
LeetCode 1614 括号的最大嵌套深度_第1张图片


思路;

  1. 先了解了有效括号字符串的成立条件。
  2. s长度为0,不含括号,s长度为1,也不含括号,直接return 0。
  3. s长度大于等于2,定义一个变量count,来一个"(",我就++,来一个")",我就–,每循环一次就用数组记录一次count的值,直到字符串s遍历完。这样可以记录括号嵌套的情况。
  4. 遍历记录count的数组num,找到最大值,那就是括号的最大嵌套深度。
    PS:因为s.length<=100,所以我想到了这个记录方法。
    总结:代码不简洁,但是思路还是容易懂吧。

代码:

class Solution {
    public int maxDepth(String s) {
        if(s.length() == 1 || s.length() == 0){
            return 0;
        }
        
        int count = 0,j = 0;
        int[] num = new int[100];
        if(s.length() >= 2){
            for(int i = 0;i < s.length();i++){
                if(s.charAt(i) == '('){
                    count++;
                }
                if(s.charAt(i) == ')'){
                    count--;
                }
                num[j++] = count;
            }
        }
        
        int max = num[0];
        for(int i = 1;i < num.length; i++){
            if(num[i] > max){
                max = num[i];
            }
        }
        return max;

    }
}

你可能感兴趣的:(LeetCode,leetcode,字符串,java)