1. Cuadro comparativo
Algoritmo Funcionamiento Orden de
complejidad
Complejidad(ti
empo-espacio)
Inserción Consiste en insertar un elemento en una parte
ya ordenada del vector y comenzar de nuevo
con los elementos restantes. Este también es
un algoritmo lento, pero puede ser de utilidad
para las listas semi ordenadas, porque en ese
caso realiza pocos desplazamientos.
O(n2
). 0.0040
segundos.
Burbuja Recorre el arreglo intercambiando los
elementos adyacentes que estén
desordenados. Recorre el arreglo tantas veces
hasta que ya no haya cambios. Prácticamente
lo que hace es tomar el elemento mayor y lo
coloca en las últimas posiciones o tomar el
elemento menor y colocarlo en las primeras
posiciones.
O(n2
). 0.0040
segundos.
Burbuja
bidireccional
Ordena al mismo tiempo por los dos extremos
del vector. De manera que tras la primera
iteración, tanto el menor como el mayor
elemento estarán en sus posiciones finales. De
esta manera se reduce el número de
comparaciones.
O(n2
). 0.0040
segundos.
Quicksort Elije un elemento al azar (pivote), entonces
intercambiará los elementos a su alrededor
siempre que encuentre elementos a la
izquierda que sean mayores que el pivote y
elementos a la derecha que sean menores.
Una vez hecho esto, Quicksort dividirá el
vector en dos y realizará el mismo
procedimiento en ambas partes.
O(n*log2(n)) 0.0010
segundos.
Shellsort Ordena por inserción subconjuntos del vector
que están separados entre sí por distancias
relativamente mayores (empezando con
distancias iguales a la mitad del tamaño del
vector), las cuales se van
reduciendo rápidamente.
O(n log n) 0.0010
segundos.
Heapsort Consiste en almacenar todos los elementos
del vector a ordenar en un montículo (heap), y
luego extraer el nodo que queda como nodo
raíz del montículo (cima) en sucesivas
iteraciones obteniendo el conjunto ordenado.
O(n log n) 0.0010
segundos.