瀏覽代碼

Quicksort added

Juan F. Hernandez 2 年之前
父節點
當前提交
95b3c416cd
共有 1 個檔案被更改,包括 21 行新增1 行删除
  1. 21
    1
      sorting.py

+ 21
- 1
sorting.py 查看文件

@@ -6,6 +6,7 @@ La variable largoLista define el largo de las listas a ordenar
6 6
 La variable veces define las veces que se va a hacer el ordenamiento 
7 7
 Al final se imprimen los promedios de cada algortimo
8 8
 """
9
+from lib2to3.pgen2.token import LESS
9 10
 from random import randint
10 11
 import time
11 12
 
@@ -19,7 +20,26 @@ def heapSort(lista):
19 20
 
20 21
 def quickSort(lista):
21 22
 	#definan el algoritmo de ordenamiento quicksort
22
-	return lista
23
+
24
+	lowerArray = []
25
+	equalArray = []
26
+	maxArray = []
27
+
28
+	if len(lista) > 1:
29
+		pivot = lista[0]
30
+		for x in lista:
31
+			if x < pivot:
32
+				lowerArray.append(x)
33
+			elif x == pivot:
34
+				equalArray.append(x)
35
+			elif x > pivot:
36
+				maxArray.append(x)
37
+            
38
+
39
+		return quickSort(lowerArray)+equalArray+quickSort(maxArray)
40
+
41
+	else: 
42
+		return lista
23 43
 
24 44
 def shellSort(lista):
25 45
 	#definan el algoritmo de ordenamiento shellsort