Delete quickSort.py
Browse files- quickSort.py +0 -32
quickSort.py
DELETED
@@ -1,32 +0,0 @@
|
|
1 |
-
import time
|
2 |
-
from colors import *
|
3 |
-
|
4 |
-
|
5 |
-
def partition(data, start, end, draw_data, time_tick):
|
6 |
-
i = start + 1
|
7 |
-
pivot = data[start]
|
8 |
-
for j in range(start+1, end+1):
|
9 |
-
if data[j] < pivot:
|
10 |
-
data[i], data[j] = data[j], data[i]
|
11 |
-
i += 1
|
12 |
-
data[start], data[i-1] = data[i-1], data[start]
|
13 |
-
return i - 1
|
14 |
-
|
15 |
-
|
16 |
-
import random
|
17 |
-
def rand_partition(data, start, end, draw_data, time_tick):
|
18 |
-
rand = start + random.randrange(end - start + 1)
|
19 |
-
data[rand], data[start] = data[start], data[rand]
|
20 |
-
return partition(data, start, end, draw_data, time_tick)
|
21 |
-
|
22 |
-
|
23 |
-
def quick_sort(data, start, end, draw_data, time_tick):
|
24 |
-
if start < end:
|
25 |
-
#pivot_position = partition(data, start, end, draw_data, time_tick)
|
26 |
-
pivot_position = rand_partition(data, start, end, draw_data, time_tick)
|
27 |
-
quick_sort(data, start, pivot_position-1, draw_data, time_tick)
|
28 |
-
quick_sort(data, pivot_position+1, end, draw_data, time_tick)
|
29 |
-
draw_data(data, [PURPLE if x >= start and x < pivot_position else YELLOW if x ==
|
30 |
-
pivot_position else DARK_BLUE if x > pivot_position and x <= end else BLUE for x in range(len(data))])
|
31 |
-
time.sleep(time_tick)
|
32 |
-
draw_data(data, [BLUE for x in range(len(data))])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|