Advertisement
Guest User

Untitled

a guest
Oct 31st, 2014
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.59 KB | None | 0 0
  1. def partition(a, lo, hi):
  2. i = lo
  3. j = hi
  4. v = a[lo]
  5. while(True):
  6. while(a[i] < v):
  7. i += 1
  8. if (i == hi): break
  9. while(a[j] > v):
  10. j -= 1
  11. if (j == lo): break
  12. if (i >= j): break
  13. a[i], a[j] = a[j], a[i]
  14. a[lo], a[j] = a[j], a[lo]
  15. return j
  16.  
  17. def sort(a, lo, hi):
  18. if (hi <= lo):
  19. return
  20. q = partition(a, lo, hi)
  21. sort(a, lo, q-1)
  22. sort(a, q+1, hi)
  23. assert isSorted(a, lo, hi)
  24.  
  25. def quick_sort(a):
  26. shuffle(a)
  27. sort(a, 0, len(a)-1)
  28. assert isSortedArray(a)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement