Heap Sort

Heapsort is a comparison-based sorting algorithm. Heapsort can be thought of as an improved selection sort: like that algorithm, it divides its input into a sorted and an unsorted region, and it iteratively shrinks the unsorted region by extracting the largest element and moving that to the sorted region. The improvement consists of the use of a heap data structure rather than a linear-time search to find the maximum.

Algorithm Visualization

Algorithm Visualization

Complexity

NameBestAverageWorstMemoryStableComments
Heap sortn log(n)n log(n)n log(n)1No

References

Wikipedia