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