两个相同字符之间的最长子字符串

在这里插入图片描述

求最大值想了半天

如果相同 不要put 因为put了新的 后面再有相同的字符 就不是最大了

感觉有点动态规划的意思

  public int maxLengthBetweenEqualCharacters(String s) {
       char[] a =s.toCharArray();
        int max = -1;
        HashMap<Character,Integer> map = new HashMap<>();
        for(int i = 0;i < a.length;i++){
            if(map.containsKey(a[i])){
                max = Math.max(max,i-map.get(a[i])-1);
                continue;
            }
            map.put(a[i],i);
        }
      return max;
    }

版权声明:本文为qq_54494937原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。