(JavaScript)求无重复的最长子串

Posted wow178

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(JavaScript)求无重复的最长子串相关的知识,希望对你有一定的参考价值。

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

示例 1:

输入: "abcabcbb"
输出: 3
解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。


示例 2:

输入: "bbbbb"
输出: 1
解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。


示例 3:

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

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/longest-substring-without-repeating-characters
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

--------------------------------------------------------------------------

一、暴力破解:利用一个数组arr存储遍历出的每一个字符,如果遇到相同的,则从0位开始一直到重复的字符全部splice出去

 1 /**
 2  * @param {string} s
 3  * @return {number}
 4  */
 5 var lengthOfLongestSubstring = function(s) {
 6     let arr = new Array()
 7     let max = 0
 8     for(let item in s) {
 9         if (arr.indexOf(s[item]) != -1) {
10             arr.splice(0,arr.indexOf(s[item])+1)
11             
12         }
13         arr.push(s[item])
14         max = Math.max(max,arr.length)
15     }
16     return max
17 };
18 lengthOfLongestSubstring(‘abcdk‘)

 

以上是关于(JavaScript)求无重复的最长子串的主要内容,如果未能解决你的问题,请参考以下文章

力扣.求无重复字符的最长子串 C++ 滑动窗口

javascript [3。没有重复字符的最长子串] #tags:leetcode

代码题(56)— 最长重复子串无重复字符的最长子串

剑指offer-最长不含重复字符的子字符串-JavaScript

最长不重复子串

无重复字符的最长子串