diff --git a/SleepSort.py b/SleepSort.py new file mode 100644 index 000000000000..1920bc2d46cd --- /dev/null +++ b/SleepSort.py @@ -0,0 +1,26 @@ +from threading import Timer +from time import sleep + + +def sleep_sort(l): + res = [] + + def add1(x): + res.append(x) + + mx = l[0] + for i in l: + if mx < i: + mx = i + Timer(i, add1, [i]).start() + sleep(mx + 1) + return res + + +l1 = [4, 1, 2, 8, 5] +print("Initial Array") +print(l1) + +print("Final Array is Arriving! Please wait..") +r = sleep_sort(l1) +print(r)