Presentacion Algoritmo heapsort
-
Upload
sergio-ormeno -
Category
Education
-
view
172 -
download
1
Transcript of Presentacion Algoritmo heapsort
![Page 1: Presentacion Algoritmo heapsort](https://reader034.fdocument.pub/reader034/viewer/2022052623/55a024601a28ab6c108b47fe/html5/thumbnails/1.jpg)
Heap Sort
Algoritmo de Ordenamiento
INTEGRANTES.• SERGIO ORMEÑO• JONATHAN GARCIA• EDUARDO LEIVA
![Page 2: Presentacion Algoritmo heapsort](https://reader034.fdocument.pub/reader034/viewer/2022052623/55a024601a28ab6c108b47fe/html5/thumbnails/2.jpg)
Conjunto finito de nodos el cual puede ser
vacío 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 ocero descendientes.
![Page 3: Presentacion Algoritmo heapsort](https://reader034.fdocument.pub/reader034/viewer/2022052623/55a024601a28ab6c108b47fe/html5/thumbnails/3.jpg)
Este head o montículo 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?
![Page 4: Presentacion Algoritmo heapsort](https://reader034.fdocument.pub/reader034/viewer/2022052623/55a024601a28ab6c108b47fe/html5/thumbnails/4.jpg)
Es un algoritmo de ordenación
basado en comparaciones de
elementos que utiliza un Heap para
ordenarlos.
También podemos decir que es un
algoritmo de ordenación no
recursivo, no estable , con
complejidad computacional.
¿Qué es Heap Sort?
![Page 5: Presentacion Algoritmo heapsort](https://reader034.fdocument.pub/reader034/viewer/2022052623/55a024601a28ab6c108b47fe/html5/thumbnails/5.jpg)
Este algoritmo consiste en almacenar todos los elementos del vector a
ordenar en un montículo y luego extraer el nodo que queda como raíz en
sucesivas iteraciones obteniendo el conjunto ordenado. basa su
funcionamiento en una propiedad de los montículos, por la cual, la cima
siempre (depende de como se defina) contendrá el mayor o menor
elemento del montículo.
¿Cómo Funciona Heap Sort?
![Page 6: Presentacion Algoritmo heapsort](https://reader034.fdocument.pub/reader034/viewer/2022052623/55a024601a28ab6c108b47fe/html5/thumbnails/6.jpg)
VENTAJAS
- La principal ventaja es que este
método funciona mas
efectivamente con datos
desordenados.
- Su desempeño 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.
- Método mas complejo
Ventajas y Desventajas
![Page 7: Presentacion Algoritmo heapsort](https://reader034.fdocument.pub/reader034/viewer/2022052623/55a024601a28ab6c108b47fe/html5/thumbnails/7.jpg)
Características Heap Sort
No recursivo:
Porque no usa métodos 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 algún (os) nodo (s) no está (n) en el mismo nivel que el resto, éste (os) estará (n) entonces lo más a la izquierda posible del árbol.
El orden de ejecución para el peor caso es O (N · log(N)).
![Page 8: Presentacion Algoritmo heapsort](https://reader034.fdocument.pub/reader034/viewer/2022052623/55a024601a28ab6c108b47fe/html5/thumbnails/8.jpg)
1. Se construye el montículo inicial a partir del arreglo original.
2. Se intercambia la raíz con el ultimo elemento del montículo.
3. El ultimo elemento queda ordenado.
4. El ultimo elemento se saca del montículo, no del arreglo.
5. Se restaura el montículo haciendo que el primer elemento baje a la posición que le
corresponde, si sus hijos son menores.
6. La raíz vuelve a ser el mayor del montículo.
7. Se repite el paso 2 hasta que quede un solo elemento en el montículo.
Algoritmo Lógico
º1
![Page 9: Presentacion Algoritmo heapsort](https://reader034.fdocument.pub/reader034/viewer/2022052623/55a024601a28ab6c108b47fe/html5/thumbnails/9.jpg)
20 10 11 8 19 2 15 12 33 73
Ejemplo Algoritmo Heap Sort
![Page 10: Presentacion Algoritmo heapsort](https://reader034.fdocument.pub/reader034/viewer/2022052623/55a024601a28ab6c108b47fe/html5/thumbnails/10.jpg)
Ordenación por montículos – Heap Sort
![Page 11: Presentacion Algoritmo heapsort](https://reader034.fdocument.pub/reader034/viewer/2022052623/55a024601a28ab6c108b47fe/html5/thumbnails/11.jpg)
Ordenación por montículos – Heap Sort
![Page 12: Presentacion Algoritmo heapsort](https://reader034.fdocument.pub/reader034/viewer/2022052623/55a024601a28ab6c108b47fe/html5/thumbnails/12.jpg)