Guest User

Untitled

a guest
Jun 23rd, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.59 KB | None | 0 0
  1. def merge(left,right):
  2. sortedArray=[]
  3. l_idx,r_idx=0,0 #set index for left and right array
  4. #compare values of left and right array
  5. while l_idx<len(left) and r_idx<len(right):
  6. if(left[l_idx] < right[r_idx]):
  7. sortedArray.append(left[l_idx])
  8. l_idx+=1
  9. else:
  10. sortedArray.append(right[r_idx])
  11. r_idx+=1
  12. if l_idx==len(left):
  13. sortedArray.extend(right[r_idx:])
  14. else:
  15. sortedArray.extend(left[l_idx:])
  16. return sortedArray
  17.  
  18. def mergesort(A):
  19. if len(A)<=1:
  20. return A
  21. middle=len(A)//2
  22. left,right=mergesort(A[:middle]),mergesort(A[middle:])
  23. return merge(left,right)
Add Comment
Please, Sign In to add comment