Advertisement
Guest User

Untitled

a guest
Mar 24th, 2019
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.74 KB | None | 0 0
  1. #st = input()
  2. #st = list(map(int, st.split(" ")))
  3. st = [0, 4, 6, 3, 7, 1, 2, 5]
  4. def mergeSort(A):
  5. if A == None or len(A) == 1:
  6. return A
  7. A1 = A[:int(len(A) / 2 + 0.5)]
  8. A2 = A[len(A1):]
  9. mergeSort(A1)
  10. mergeSort(A2)
  11. A = A1 + A2
  12. left = 0
  13. right = len(A) - 1
  14. mid = len(A1) - 1
  15. A = merge(A, left, mid, right)
  16. return A
  17.  
  18. def merge(A, left, mid, right):
  19. res = []
  20. i = left
  21. j = mid + 1
  22. while i <= mid and j <= right:
  23. if A[i] <= A[j]:
  24. res.append(A[i])
  25. i += 1
  26. else:
  27. res.append(A[j])
  28. j += 1
  29. if i > mid:
  30. res += A[j:]
  31. else:
  32. res += A[i : mid + 1]
  33. print(res)
  34. return res
  35. mergeSort(st)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement