牛客 NC41 找到字符串的最长无重复字符子串(滑动窗口)

在这里插入图片描述
滑动窗口维护左边界 记录最大值

    public int maxLength (int[] arr) {
    
    
        int left = 0;
        int max = -1;
        HashMap<Integer ,Integer> map = new HashMap<>();
        for(int i = 0;i < arr.length;i++){
    
    
            if(map.containsKey(arr[i])){
    
    
                left = Math.max(left,map.get(arr[i])+1);
            }
            map.put(arr[i],i);
            max = Math.max(max,i-left+1);
        }
        return max;
    }

猜你喜欢

转载自blog.csdn.net/qq_43434328/article/details/114977446
今日推荐