Advertisement
Guest User

Untitled

a guest
Oct 31st, 2014
171
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, j, v = lo+1, hi, a[lo]
  3. while(True):
  4. while(a[i] < v):
  5. i += 1
  6. if (i == hi): break
  7. while(a[j] > v):
  8. j -= 1
  9. if (j == lo): break
  10. if (i >= j): break
  11. a[i], a[j] = a[j], a[i]
  12. a[lo], a[j] = a[j], a[lo]
  13. return j
  14.  
  15. def sort(a, lo, hi):
  16. if (hi <= lo):
  17. return
  18. q = partition(a, lo, hi)
  19. sort(a, lo, q-1)
  20. sort(a, q+1, hi)
  21. assert isSorted(a, lo, hi)
  22.  
  23. def quick_sort(a):
  24. shuffle(a)
  25. sort(a, 0, len(a)-1)
  26. assert isSortedArray(a)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement