JSFiddle - React, Tailwind, and code Playground
by Steven Senkus
JavaScript
var lengthOfLongestSubstring = function(s) {
let foundChars = [];
let longestPattern = '';
for (let i = 0; i < s.length; i++) {
// console.log('----------------------');
// console.log(s[i]);
foundChars.push(s[i]);
if (s.length === 1) {
longestPattern = s[i];
break;
}
for (let j = i + 1; j < s.length; j++) {
if (foundChars.indexOf(s[j]) !== -1) {
let foundPattern = s.slice(i, j);
if (longestPattern.length < foundPattern.length) longestPattern = foundPattern
foundChars = [];
break;
} else {
// console.log(s[j], j);
foundChars.push(s[j]);
if (s.length === j+1) {
let foundPattern = s.slice(i, j);
console.log('foundPattern', foundPattern);
if (longestPattern.length < foundPattern.length) longestPattern = foundPattern
foundChars = [];
break;
}
}
}
}
return longestPattern.length;
};
console.log(lengthOfLongestSubstring('abcabcbb')) // === 'abc';
console.log(lengthOfLongestSubstring("bbbbb"))
console.log(lengthOfLongestSubstring('pwwkew'))
console.log(lengthOfLongestSubstring(' '))
console.log(lengthOfLongestSubstring('au'))