Skip to content

Commit ca67cb7

Browse files
committedOct 12, 2020
add solution for leetcode3
1 parent 3e9c5aa commit ca67cb7

File tree

2 files changed

+24
-2
lines changed

2 files changed

+24
-2
lines changed
 

‎README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -407,8 +407,8 @@ LeetCode
407407
|8|[String to Integer (atoi)](https://leetcode.com/problems/string-to-integer-atoi/)| |Easy|
408408
|7|[Reverse Integer](https://leetcode.com/problems/reverse-integer/)| |Easy|
409409
|6|[ZigZag Conversion](https://leetcode.com/problems/zigzag-conversion/)| |Easy|
410-
|5|[Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/)| |Medium|
410+
|5|[Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/)| |Medium|
411411
|4|[Median of Two Sorted Arrays](https://leetcode.com/problems/median-of-two-sorted-arrays/)| |Hard|
412-
|3|[Longest Substring Without Repeating Characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/)| |Medium|
412+
|3|[Longest Substring Without Repeating Characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/)| [js](./algorithms/longestSubstringWithoutRepeatingCharacters/longestSubstringWithoutRepeatingCharacters.js) |Medium|
413413
|2|[Add Two Numbers](https://leetcode.com/problems/add-two-numbers/)| [js](./algorithms/addTwoNumbers/addTwoNumbers.js) |Medium|
414414
|1|[Two Sum](https://leetcode.com/problems/two-sum/) | [java](./algorithms/twoSum/twoSum.java), [js](./algorithms/twoSum/twoSum.js), [python](./algorithms/twoSum/twoSum.py) |Easy|
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
/**
2+
* @param {string} s
3+
* @return {number}
4+
*/
5+
var lengthOfLongestSubstring = function(s) {
6+
const set = new Set();
7+
let R = -1, ans = 0;
8+
const len = s.length;
9+
for (let L = 0; L < len; L++) {
10+
if (L !== 0) {
11+
// 左指针向右移动一格,移除一个字符
12+
set.delete(s.charAt(L - 1))
13+
}
14+
while ( R + 1 < len && !set.has(s.charAt(R + 1))) {
15+
// 不断地移动右指针
16+
set.add(s.charAt(R + 1));
17+
++R;
18+
}
19+
ans = Math.max(ans, R - L + 1)
20+
}
21+
return ans;
22+
};

0 commit comments

Comments
 (0)
Please sign in to comment.