瀏覽代碼

quicksort comments

Juan Hdez 2 年之前
父節點
當前提交
33e97308a5
共有 1 個文件被更改,包括 24 次插入1 次删除
  1. 24
    1
      sorting.py

+ 24
- 1
sorting.py 查看文件

@@ -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