Algoritmos de Ordenamiento en Python
PREPARACIÓN DEL REPORTE INFORMATIVO EN FORMATO DE DOS
COLUMNAS (MANUSCRITO ESTILO “PAPER”).
Omar Nelson Herrera Prieto
omaher2@[Link]
RESUMEN: Los algoritmos de ordenamiento nos permite, como su nombre lo dice, ordenar. En
este caso, nos servirán para ordenar vectores o matrices con valores asignados
aleatoriamente.
PALABRAS CLAVE: algoritmo, ordenar, matrices, valores, aleatoriamente
1 INTRODUCCIÓN
Por medio de este artículo se va a mostrar los diferentes algoritmos de ordenamiento y por medio de los códigos de
Python se verá qué función cumple mostrando que se le hace a los valores de manera que quieren organizados según el
proceso que tenga el algoritmo.
2 TEXTO PRINCIPAL
Para que aquellos que todavía no manejen Python se darán los códigos que se manejan a través de los
programas, recordar que éstos se dan en una lista
len = Muestra número de valores de la lista
return = Detiene el programa
for = Ciclo interminable
range = Genera una lista según los valores que se le den
def = Definir un programa
if = Condición que se le da para ejercer alguna función
Ahora se le darán los diferentes algoritmos de ordenamiento para que se entienda cuál es la función de
cada uno, los algoritmos son:
2.1 Ordenamiento Burbuja Básico:
Compara todos los elementos de una lista contra todos, si se cumple que uno es mayor o me-
nor a otro, entonces los intercambia de posición.
2.2 Ordenamiento Burbuja Mejorada: Una nueva versión del método de la burbuja seria limitan-
do el número de comparaciones, dijimos que era inútil que se compare consigo misma.
2.3 Ordenamiento de selección: La ordenación por selección funciona seleccionando el menor
elemento de la matriz y llevándolo al principio; a continuación selecciona el siguiente menor y lo
pone en la segunda posición de la matriz y así sucesivamente.
1
Algoritmos de Ordenamiento en Python
.
3 GRAFICOS, FOTOGRAFÍAS Y TABLAS
[2]Ordenamiento Burbuja básico:
1. def burbujabasico(l): -> Define esta función
2. for pasada in range(1, len(l)-1): ->Crea un rango entre 1 y las cantidades de
l -1
3. for i in range(0,len(l)-1): -> Crea un rango entre 0 y la cantidad de l -1
4. if l[i] > l[i+1]: -> Compara cada uno de los términos
5. l[i], l[i+1] = l[i+1], l[i] -> Intercambia según va encontrando meno-
res
6. return l ->Termina los ciclos
Ordenamiento Burbuja mejorado:
1. def burbujamejorado(l): -> Define esta función
2. for pas in range(1, len(l)-1): -> Crea un rango entre 1 y las cantidades de l
-1
3. for i in range(0,len(l)-pas): -> Crea un rango entre 0 y la cantidad de l -
pas
4. if l[i] > l[i+1]: -> Compara el primer termino por el segundo
5. l[i], l[i+1] = l[i+1], l[i] ->Intercambia directamente entre posicio-
nes
6. return l -> Termina los ciclos
[1]Algoritmo de Ordenamiento por Selección Iterativa en Python
1. def seleccion (l) : -> Define esta función
2. for i in range(0, len(l)-1): -> Crea un rango entre 1 y las cantidades de lis-
ta -1
3. indiceMenor=i -> Examina el índice menor entre i
4. for j in range(i+1, len(l)) : ->Crea un rango entre i+1 y la cantidad de l
5. if l[j]<l[indiceMenor] : ->Compara el menor en la lista de j
6. indiceMenor=j -> Examina el índice menor entre j
7. if i!=indiceMenor : ->Intercambia del menor a la primera posición
8. l[i],l[indiceMenor]=lista[indiceMenor],l[i] - >Continua con los demás nú-
meros
9. return l -> Termina los ciclos
4 REFERENCIAS
[1] [Link]
[2] [Link]