Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Find the length of maximum number of consecutive numbers jumbled up in an array.
- // e.g.: 1, 94, 93, 1000, 2, 92, 1001 should return 3 for 92, 93, 94
- var numbers = [1, 94, 93, 1000, 2, 92, 1001];
- var sequences = [];
- var count = 1;
- var diff;
- var largest;
- // sort
- numbers.sort(function(a, b){
- return a - b;
- });
- // count sequences
- numbers.reduce(function (prev, curr, i) {
- diff = curr - prev;
- if (diff === 1) {
- count += 1;
- } else {
- sequences.push(count);
- count = 1;
- }
- if (i === numbers.length - 1) {
- sequences.push(count);
- }
- return curr;
- });
- // get the largest
- largest = sequences.reduce(function(prev, curr) {
- return curr > prev ? curr : prev;
- });
- console.log(numbers);
- console.log(sequences);
- console.log(largest);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement