Sunteți pe pagina 1din 12

Heap Sort

Algoritmo de Ordenamiento

INTEGRANTES.
SERGIO ORMEO
JONATHAN GARCIA
EDUARDO LEIVA

rbol Binario
Conjunto 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 Completo


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

Qu es un Head?
Este 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 Heap Sort?

Es 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.

Cmo Funciona Heap Sort?

Este 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.

Ventajas y Desventajas
VENTAJAS

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

Caractersticas Heap Sort


No recursivo:
Porque no usa mtodos que se llamen a s mismos, sino que usa
sucesivas iteraciones para obtener el conjunto de nodos ordenados.
No estable
Ya 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)).

Algoritmo Lgico
1

1. 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.

Ejemplo Algoritmo Heap Sort


3

15

12

33

20

10

11

Vector

Arbol

Ordenacin por montculos Heap


Sort

Ordenacin por montculos Heap


Sort

S-ar putea să vă placă și