Advertisement
Guest User

Untitled

a guest
Jul 30th, 2016
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.72 KB | None | 0 0
  1. // Find the length of maximum number of consecutive numbers jumbled up in an array.
  2. // e.g.: 1, 94, 93, 1000, 2, 92, 1001 should return 3 for 92, 93, 94
  3.  
  4. var numbers = [1, 94, 93, 1000, 2, 92, 1001];
  5. var sequences = [];
  6. var count = 1;
  7. var diff;
  8. var largest;
  9. // sort
  10. numbers.sort(function(a, b){
  11. return a - b;
  12. });
  13. // count sequences
  14. numbers.reduce(function (prev, curr, i) {
  15. diff = curr - prev;
  16. if (diff === 1) {
  17. count += 1;
  18. } else {
  19. sequences.push(count);
  20. count = 1;
  21. }
  22. if (i === numbers.length - 1) {
  23. sequences.push(count);
  24. }
  25. return curr;
  26. });
  27. // get the largest
  28. largest = sequences.reduce(function(prev, curr) {
  29. return curr > prev ? curr : prev;
  30. });
  31.  
  32. console.log(numbers);
  33. console.log(sequences);
  34. console.log(largest);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement