Skip to content

Commit abe7928

Browse files
committed
feat: solve new question
1 parent 708a7ac commit abe7928

File tree

1 file changed

+45
-0
lines changed
  • longest-consecutive-sequence

1 file changed

+45
-0
lines changed

longest-consecutive-sequence/main.js

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
/**
2+
* @param {number[]} nums
3+
* @return {number}
4+
5+
nums = [100,4,200,1,3,2]
6+
7+
sort it
8+
nums = [1,2,3,4,100,200]
9+
10+
count = 0
11+
loop it
12+
if nums[i] + 1 == nums[i+1]:
13+
count += 1
14+
else:
15+
return count
16+
17+
*/
18+
var longestConsecutive = function(nums) {
19+
nums.sort((a, b) => a - b);
20+
21+
// if empty return 0
22+
if (nums.length === 0) {
23+
return 0;
24+
}
25+
26+
let count = 1;
27+
let maxCount = 1;
28+
29+
30+
for (let i=0; i < nums.length; i++) {
31+
// skip dups
32+
if (i > 0 && nums[i] == nums[i - 1]) {
33+
continue;
34+
}
35+
36+
if (nums[i] == nums[i - 1] + 1) {
37+
count += 1;
38+
} else {
39+
maxCount = Math.max(maxCount, count);
40+
count = 1;
41+
}
42+
}
43+
return Math.max(maxCount, count);
44+
45+
};

0 commit comments

Comments
 (0)