Reputation: 47
I have tried to do it but I can't figure it out. I have this Quick Sort that is searching at index 1 but how to I change the string at that index to ints?
def quick_sort(list):
if not list:
return list
pivot = list[0]
lesser = quick_sort([x for x in list[1:] if x[1] < pivot[1]], 1)
greater = quick_sort([x for x in list[1:] if x[1] >= pivot[1]], 1)
return lesser + [pivot] + greater
Any help out there?
Upvotes: 1
Views: 137
Reputation: 170
Here try this out.
def quick_sort(list):
if not list:
return list
pivot = list[0]
lesser = quick_sort([x for x in list[1:] if float(x[1]) < float(pivot[1])], 1)
greater = quick_sort([x for x in list[1:] if float(x[1]) >= float(pivot[1])], 1)
return lesser + [pivot] + greater
Upvotes: 2
Reputation: 122446
You don't need the index
variable:
def quick_sort(list):
if not list:
return list
pivot = list[0]
lesser = quick_sort([x for x in list[1:] if x < pivot])
greater = quick_sort([x for x in list[1:] if x >= pivot])
return lesser + [pivot] + greater
Upvotes: 0