|
@@ -98,7 +98,30 @@ def heapSort(lista):
|
98
|
98
|
|
99
|
99
|
def quickSort(lista):
|
100
|
100
|
#definan el algoritmo de ordenamiento quicksort
|
101
|
|
- return lista
|
|
101
|
+ #Juan F. Hernandez
|
|
102
|
+ # Para este codigo se utilizo referencia de stackoverflow
|
|
103
|
+
|
|
104
|
+ #define arreglos a utilizar
|
|
105
|
+ lowerArray = []
|
|
106
|
+ equalArray = []
|
|
107
|
+ maxArray = []
|
|
108
|
+
|
|
109
|
+ #organiza los elementos utilizando el pivote para ponerlos en orden
|
|
110
|
+ if len(lista) > 1:
|
|
111
|
+ pivot = lista[0]
|
|
112
|
+ for x in lista:
|
|
113
|
+ if x < pivot:
|
|
114
|
+ lowerArray.append(x)
|
|
115
|
+ elif x == pivot:
|
|
116
|
+ equalArray.append(x)
|
|
117
|
+ elif x > pivot:
|
|
118
|
+ maxArray.append(x)
|
|
119
|
+
|
|
120
|
+ #concatena arreglos en orden
|
|
121
|
+ return quickSort(lowerArray)+equalArray+quickSort(maxArray)
|
|
122
|
+
|
|
123
|
+ else:
|
|
124
|
+ return lista
|
102
|
125
|
|
103
|
126
|
def shellSort(lista):
|
104
|
127
|
#definan el algoritmo de ordenamiento shellsort
|