métodos de ordenamiento

4
Método de Ordenamien to Funcionamiento Orden de Complejidad Complejidad Mejor Caso Caso promedio Peor caso Espacio Tiempo (256 elementos) Burbuja El método de la burbuja es uno de los más simples, es tan fácil como comparar todos los elementos de una lista contra todos, si se cumple que uno es mayor o menor a otro, entonces los intercambia de posición. O(n) O(n 2 ) O(n 2 ) 307 bytes 0.0040 Segundos Burbuja Bidireccio nal La manera de trabajar de este algoritmo es ir ordenando 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. O(n) 0(n 2 ) 0(n 2 ) 1,10 KB (1.135 bytes) 0.0030 Segundos QuickSort Lo que hace este algoritmo es dividir recursivamente el vector en partes O( n log n ) (2 sub- listas) o O( n ) (3 O( n log n ) O( n 2 ) 971 bytes 0.0010 Segundos

Upload: cristopher-morales-ruiz

Post on 30-Jul-2015

20 views

Category:

Engineering


1 download

TRANSCRIPT

Page 1: Métodos de ordenamiento

Método de Ordenamiento

Funcionamiento Orden de Complejidad Complejidad

Mejor Caso Caso promedio

Peor caso Espacio Tiempo (256 elementos)

Burbuja El método de la burbuja es uno de los más simples, es tan fácil como comparar todos los elementos de una lista contra todos, si se cumple que uno es mayor o menor a otro, entonces los intercambia de posición.

O(n) O(n2) O(n2) 307 bytes 0.0040 Segundos

Burbuja Bidireccional

La manera de trabajar de este algoritmo es ir ordenando 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.

O(n) 0(n2) 0(n2)1,10 KB

(1.135 bytes) 0.0030 Segundos

QuickSort Lo que hace este algoritmo es dividir recursivamente el vector en partes iguales, indicando un elemento de inicio, fin y un pivote (o comodín) que nos permitirá segmentar nuestra lista. Una vez dividida, lo que hace, es dejar todos los mayores que el pivote a su derecha y todos los menores a su izq. Al finalizar el algoritmo, nuestros elementos están ordenados.

O(n log n) (2 sub-listas)o O(n) (3

sub-listas) 

O(n log n) O(n2) 971 bytes0.0010

Segundos

Page 2: Métodos de ordenamiento

Método de Ordenamiento Funcionamiento

Orden de Complejidad

Mejor Caso Caso promedio

Peor caso Espacio Tiempo (256 elementos)

HeapSort

Basa su funcionamiento en una propiedad de los montículos, por la cual, la cima contiene siempre el menor elemento (o el mayor, según se haya definido el montículo) de todos los almacenados en él. El algoritmo, después de cada extracción, recoloca en el nodo raíz o cima, la última hoja por la derecha del último nivel.

O(n log n) O(n log n) O(n log n)1,19 KB (1.225

bytes)0.0010

Segundos

ShellSort

Este método es una mejora del algoritmo de ordenamiento por Inserción (Insertsort).Si tenemos en cuenta que el ordenamiento por inserción es mucho más eficiente si nuestra lista de números esta semi-ordenada y que desplaza un valor una única posición a la vez.

O(n log n) Depende O(n2) 722 bytes0.0010

Segundos

Inserción

El bucle principal de la ordenación por inserción va examinando sucesivamente todos los elementos de la matriz desde el segundo hasta el n-ésimo, e inserta cada uno en el lugar adecuado entre sus predecedoras dentro de la matriz.

O(n) O(n2) O(n2)1,12 KB (1.150

bytes)0.0040

Segundos