题目
给定一个字符串 s,找出最长子串的长度,且没有重复字符。
Example 1:
Input:s = "abcabcbb"
Output:3
Explanation:The answer is "abc", with the length of 3.
Example 2:
Input:s = "bbbbb"
Output:1
Explanation:The answer is "b", with the length of 1.
Example 3:
Input:s = "pwwkew"
Output:3
Explanation:The answer is "wke", with the length of 3.
Example 4:
Input:s = ""
Output:0
分析
根据该题目,最直接的算法是使用插入法,即需要遍历字符串,根据各个符合相关条件的字符串的起始和字符串的结束来比较长度大小,最后找到最长的字符串,从而返回子字符串的长度。
根据该算法,需要双重循环,且需要一个数值来记录当前找到的最长字符串的长度。所以算法的运行时间预估在O(n*n).
代码
结果