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


|leetcode 3. 无重复字符的最长子串
文章图片

题目给定一个字符串 , 请你找出其中不含有重复字符的 最长子串 的长度 。
示例 1:
输入: \"abcabcbb\"
输出: 3
解释: 因为无重复字符的最长子串是 \"abc\" , 所以其长度为 3 。

【|leetcode 3. 无重复字符的最长子串】示例 2:
输入: \"bbbbb\"
输出: 1
解释: 因为无重复字符的最长子串是 \"b\" , 所以其长度为 1 。

示例 3:
输入: \"pwwkew\"
输出: 3
解释: 因为无重复字符的最长子串是 \"wke\" , 所以其长度为 3 。
     请注意 , 你的答案必须是 子串 的长度 , \"pwke\" 是一个子序列 , 不是子串 。

题解我们要求解子串的长度可以分为以下部分

  1. 找到无重复的子串
  2. 获取该长度
  3. 获取最大长度
滑动窗口双下标检测使用下标beginend来构建子字符串子字符串[beginend)左闭右开这样子我们可以直接使用s[end
来判断该字符是否存在于子字符串[beginend)中.