[3] Longest Substring Without Repeating Characters

寻找一个字符串中不含重复元素的最长子串

题目链接: https://leetcode.com/problems/longest-substring-without-repeating-characters

 

 

给一个字符串,包含各种字符。寻找最长的不含重复元素的字串。 输出长度

自己意淫的一个很慢的方法: 遍历字符串,map存储当前字符是否在子串中,1为存在,0或null为不存在。 然后一边更新map一边更新最大长度。。。

 

题解中o(n) 的方法:   同样遍历字符串,用i指向子串末端,j指向子串首端,map用来记录上一次此字符出现的位置, 当遇到重复元素时。j 直接移到上一次出现此字符的后面位置。
我好像也是这么想的。代码表达错了。。写着写着就偏了。。。(开始以为只有26个英文字符。。。

🙂 ”’  同样使用map,别人用得这么优雅。 同样是java 别人写得这么优雅。 受教 pf.jpg