【JS】找到字符串的最长无重复字符子串

找到字符串的最长无重复字符子串

http://www.nowcoder.com/questionTerminal/b56799ebfd684fb394bd315e89324fb4

/**
 * 
 * @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
};
全部评论

相关推荐

牛客410815733号:这是什么电影查看图片
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务