Guest User

Untitled

a guest
Nov 18th, 2017
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.93 KB | None | 0 0
  1. const merge = (leftArr, rightArr, OG) => {
  2. const leftSize = leftArr.length;
  3. const rightSize = rightArr.length;
  4. const ogSize = OG.length;
  5. let lefty = 0;
  6. let righty = 0;
  7. let oggy = 0;
  8. while(lefty < leftSize && righty < rightSize) {
  9. if(leftArr[lefty] < rightArr[righty]) {
  10. OG[oggy] = leftArr[lefty];
  11. lefty++;
  12. } else {
  13. OG[oggy] = rightArr[righty];
  14. righty++;
  15.  
  16. }
  17. oggy++;
  18. }
  19. while(lefty < leftSize) {
  20. OG[oggy] = leftArr[lefty];
  21. lefty++;
  22. oggy++;
  23. }
  24. while(righty < rightSize) {
  25. OG[oggy] = rightArr[righty];
  26. righty++;
  27. oggy++;
  28. }
  29. return OG;
  30. }
  31. const mergeSort = (arr) => {
  32. const size = arr.length;
  33. if(arr.length <= 1){
  34. return arr;
  35. }
  36. const midPoint = Math.round(size/2) - 1;
  37. const leftPart = arr.slice(0,midPoint+1);
  38. const rightPart = arr.slice(midPoint+1);
  39. mergeSort(leftPart);
  40. mergeSort(rightPart);
  41. merge(leftPart, rightPart, arr);
  42. return arr;
  43. }
Add Comment
Please, Sign In to add comment