题目描述:
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。
示例:
输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。
题目链接:https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/
解答:
1、暴力破解
思路简单,即针对于给出的串,依次遍历串中的所有子串,并判断该子串是否存在重复的字符,并记录当前最长的子串长度即可。
图示:
2、滑动窗口
即针对于已经做过比较的子串不重复比较,如果从索引 i 到 j - 1 之间的子字符串 s_{ij}已经被检查为没有重复字符。我们只需要检查 s[j]对应的字符是否已经存在于子字符串 s_{ij}中。
图示: