algoritmo de clasificación rápida de tres vías de Python
clase?quick_sort(objeto):
def?_partition(self,?alist,?p,?r):
i?=?p-1
x?=?alista[r]
para?j?in?range(p,?r).
if?alista[j]<=x:
i?+=?1
alista[i],?alista[j] =? alista[j],?alista[i]
alista[i+1],?alista[r]?=?alista[r],?alista[i+1]
return?i+1
def?_quicksort(self,?alist,?p,?r):
si?p q ?=?self._partition( alista,?p,?r) self._quicksort(alista,?p,?q-1) self._quicksort(alista,? q+1,?r) def?