presentacionheapsort-140611145948-phpapp01.pptx

12
Heap Sort Algoritmo de Ordenamiento INTEGRANTES. • SERGIO ORMEÑO • JONATHAN GARCIA • EDUARDO LEIVA

Upload: cieloci

Post on 12-Sep-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Diapositiva 1

Heap Sort

Algoritmo de OrdenamientoINTEGRANTES.SERGIO ORMEOJONATHAN GARCIAEDUARDO LEIVA1Conjunto finito de nodos el cual puede ser vaco o tener un par de rboles llamados izquierdo y derecho. Cuando un nodo no tiene hijos se le llama hoja o nodo terminal.

rbol Binario

rbol Binario Completo

Es aquel que en todos los nodos, solo tienen 2 o cero descendientes.

2Este head o montculo es un rbol binario donde todos los padres son mayores que sus hijos.

Este rbol binario tiene que ser completo, es decir, que debe tener todos sus niveles llenos, excepto el ultimo y en este ultimo nivel todos los hijos esta a un mismo lado ( por ejemplo a la izquierda).Qu es un Head?3Es un algoritmo de ordenacin basado en comparaciones de elementos que utiliza un Heap para ordenarlos.

Tambin podemos decir que es un algoritmo de ordenacin no recursivo, no estable , con complejidad computacional.Qu es Heap Sort?

4Este algoritmo consiste en almacenar todos los elementos del vector a ordenar en un montculo y luego extraer el nodo que queda como raz en sucesivas iteraciones obteniendo el conjunto ordenado. basa su funcionamiento en una propiedad de los montculos, por la cual, la cima siempre (depende de como se defina) contendr el mayor o menor elemento del montculo.Cmo Funciona Heap Sort?5VENTAJAS

La principal ventaja es que este mtodo funciona mas efectivamente con datos desordenados.

Su desempeo es en promedio tan bueno como el Quicksort y se comporta mejor que este ltimo en los peores casos.

No utiliza memoria adicional.

DESVENTAJAS

No es estable, ya que se comporta de manera ineficaz con datos del mismo valor.

Mtodo mas complejo

Ventajas y Desventajas 6Caractersticas Heap SortNo recursivo: Porque no usa mtodos que se llamen a s mismos, sino que usa sucesivas iteraciones para obtener el conjunto de nodos ordenados.No estableYa que se comporta de manera poco eficaz con datos del mismo valor.

Con complejidad O(n log n).

Funcionamiento:El rbol se llena de izquierda a derecha, lo que implica que si algn (os) nodo (s) no est (n) en el mismo nivel que el resto, ste (os) estar (n) entonces lo ms a la izquierda posible del rbol.

El orden de ejecucin para el peor caso es O (N log(N)).

71. Se construye el montculo inicial a partir del arreglo original.

2. Se intercambia la raz con el ultimo elemento del montculo.

3. El ultimo elemento queda ordenado.

4. El ultimo elemento se saca del montculo, no del arreglo.

5. Se restaura el montculo haciendo que el primer elemento baje a la posicin que le corresponde, si sus hijos son menores.

6. La raz vuelve a ser el mayor del montculo.

7. Se repite el paso 2 hasta que quede un solo elemento en el montculo.Algoritmo Lgico1 201011819215123373VectorArbolEjemplo Algoritmo Heap Sort

Ordenacin por montculos Heap SortOrdenacin por montculos Heap Sort