Update quick_sort.py

Streamlining quick_sort function
This commit is contained in:
yyeltsyn 2016-08-29 11:29:49 +03:00 committed by GitHub
parent abd9d78a62
commit 66433a5f0b

View File

@ -35,21 +35,20 @@ def quick_sort(collection):
>>> quick_sort([-2, -5, -45])
[-45, -5, -2]
"""
if len(collection) <= 1:
return collection
less = []
equal = []
greater = []
if len(collection) > 1:
pivot = collection[0]
for x in collection:
if x < pivot:
less.append(x)
if x == pivot:
equal.append(x)
if x > pivot:
greater.append(x)
return quick_sort(less) + equal + quick_sort(greater)
else:
return collection
pivot = collection[0]
for x in collection:
if x < pivot:
less.append(x)
elif x == pivot:
equal.append(x)
else:
greater.append(x)
return quick_sort(less) + equal + quick_sort(greater)
if __name__ == '__main__':