Advertisement
Guest User

Untitled

a guest
Aug 24th, 2016
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. function merge(left,right){
  2.  
  3. var results = [];
  4. var left_index = 0;
  5. var right_index = 0;
  6. var len_r = right.length
  7. var len_l = left.length
  8. while(left_index < left.length, right_index < right.length){
  9. if (left[left_index] <= right[right_index]){
  10. results.push(left[left_index]);
  11. left_index ++;
  12. }
  13. else{
  14. results.push(right[right_index]);
  15. right_index ++;
  16. }
  17. }
  18. if (left){
  19. results.concat(left.slice(left_index, len_l));
  20. }
  21. if (right){
  22. results.concat(right.slice(right_index,len_r));
  23. }
  24. return results;
  25. }
  26.  
  27. // var a = [0,1,2,3]
  28. // var b = [4,6,1]
  29. // console.log(merge(a,b));
  30.  
  31. // var myList = [0,1,2,3];
  32. // var res = [5]
  33. // var len = myList.length
  34.  
  35. // s = res.concat(myList.slice(1,len));
  36. // console.log(s);
  37.  
  38. function mergeSort(myList){
  39. len = myList.length;
  40. //console.log(myList)
  41. if (myList.length < 2){
  42. return myList;
  43. }
  44.  
  45. var middle = parseInt(myList.length/2);
  46. var left = myList.slice(0,middle);
  47. var right = myList.slice(middle,myList.length);
  48. console.log(myList)
  49.  
  50. return merge(mergeSort(left),mergeSort(right));
  51.  
  52. }
  53.  
  54. var myList = [0,1,5,8,2,4];
  55.  
  56. console.log(mergeSort(myList));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement