1624. Largest Substring Between Two Equal Characters

1624. Largest Substring Between Two Equal Characters #

题目 #

  • 给你一个字符串 s,请你返回 两个相同字符之间的最长子字符串的长度 *,*计算长度时不含这两个字符。如果不存在这样的子字符串,返回 -1

  • 子字符串 是字符串中的一个连续字符序列。

思路 #

模拟 #

代码 #

模拟 #

class Solution {
    public int maxLengthBetweenEqualCharacters(String s) {
        int[] pos = new int[26];
        Arrays.fill(pos, -1);
        
        int ans = -1;
        for (int i = 0; i < s.length(); i++) {
            Character ch = s.charAt(i);
            if (pos[ch-'a'] == -1) pos[ch-'a'] = i;
            else ans = Math.max(ans, i-1-pos[ch-'a']);
        }
        
        return ans;
    }
}