字符串中不含有重复字符的最长子串

给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。

Input: 'abcabcbb'
Output: 3

Input: 'au'
Output: 2

Input: ''
Output: 0

Input: ' '
Output: 1

思路:双指针

var lengthOfLongestSubstring = function(s) {
  let res = 0;
  let len = s.length;
  let i = 0;
  for (let j=i; j<len; j++) {
    let str = s.substring(i, j);
    let index = str.indexOf(s[j]);
    if (index >= 0) {
      res = Math.max(res, str.length);
      i += index + 1;
    } else if (j === len-1) {
      res = Math.max(res, len-i);
    }
  }
  return res;
};
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容