length of longest substring with no repititions
by hrabinowitz
HTML
<p>
Results are
</p>
JavaScript
/**
* @param {string} s
* @return {number}
*/
var lengthOfLongestSubstring = function(s) {
var length = 0;
for (var i=0; i<s.length; i++) {
var len = lengthOfLongestSubstrFromBeginning(s.substr(i));
if (len > length) {
length = len;
}
}
return length;
};
function lengthOfLongestSubstrFromBeginning(str) {
var hash = {};
for (var i=0; i<str.length; i++) {
if (hash[str[i]] == null) {
hash[str[i]] = 1;
} else {
// already encountered
//return i;
break;
}
}
console.log("lengthOfLongestSubstrFromBeginning: str=", str, "i=", i);
return i;
}
alert(a=lengthOfLongestSubstring("abcabcdabcde"));
alert(b=lengthOfLongestSubstring('abcabcbb'));
$('p').append(a).append('<br>');
$('p').append(b).append('<br>');
$('p').append(lengthOfLongestSubstring('bbbbb')).append('<br>');