Advertisement
nikbel

quick_sort

Mar 18th, 2019
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.57 KB | None | 0 0
  1. import random
  2. with open('sort.txt') as f:
  3.     for lines in f:
  4.         lines = [int(x) for x in lines.split(',')]
  5. arr = lines
  6. right = 0
  7. left = len(arr) - 1
  8. print(arr)
  9.  
  10. def quicksort(arr, right, left):
  11.    if right >= left: return
  12.    i, j = right, left
  13.    zn = arr[random.randint(right, left)]
  14.    while i <= j:
  15.        while arr[i] < zn: i += 1
  16.        while arr[j] > zn: j -= 1
  17.        if i <= j:
  18.            arr[i], arr[j] = arr[j], arr[i]
  19.            i, j = i + 1, j - 1
  20.    quicksort(arr, right, j)
  21.    quicksort(arr, i, left)
  22.  
  23. quicksort(arr, right, left)
  24.  
  25. print(arr)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement