Advertisement
Guest User

Untitled

a guest
Feb 22nd, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function mergeSort(arr) {
  2.   if (arr.length === 1) {
  3.     return arr
  4.   }
  5.  
  6.   center = Math.floor(arr.length / 2)
  7.   left = arr.slice(0, center)
  8.   right = arr.slice(center)
  9.  
  10.   return merge(mergeSort(left), mergeSort(right))
  11. }
  12.  
  13. function merge(left, right) {
  14.   const results = []
  15.  
  16.   while (left.length && right.length) {
  17.     if (left[0] < right[0]) {
  18.       results.push(left.shift())
  19.     } else {
  20.       results.push(right.shift())
  21.     }
  22.   }
  23.  
  24.   return [...results, ...left, ...right]
  25. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement