/** * * @param arr int整型一维数组 the array * @return int整型 */ function maxLength( arr ) { let idx = 0; let max = 1; let map = new Map(); while (idx < arr.length) { // 有重复了 if (map.has(arr[idx])) { max = Math.max(max, map.size); // 重新定位 idx 为重复字符的后一位 idx = map.get(arr[idx]) + 1; // 清空记录表 map.clear(); } else { map.set(arr[idx], idx); idx++; } } max = Math.max(max, map.size); return max; } module.exports = { maxLength : maxLength };