Skip to content
On this page

3. 无重复字符的最长子串

原题链接:LeetCode 3. 无重复字符的最长子串

题目描述

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

示例 1:

"abc"

示例 2:

"b"

示例 3:

"wke"

提示:

0 <= s.length <= 5 * 104
- `s` 由英文字母、数字、符号和空格组成

难度: Medium


题解代码

javascript
/**
 * @param {string} s
 * @return {number}
 */
 var lengthOfLongestSubstring = function(s) {
    let max = 0
    const arr = [] // 滑动窗口
    for (let i = 0; i < s.length; i++) {
        const index = arr.indexOf(s[i])
        if (index !== -1) {
            arr.splice(0, index + 1)
        }
        arr.push(s[i])
        max = Math.max(max, arr.length)
    }
    return max
};

技术文档集合