堆排序策略:基于选择还是交换?

问题描述

我无法决定哪种方法更适合 HeapSort。是选择根还是用最后一个元素改变它?从这两个中哪个是正确的?

解决方法

根据these lecture notes

堆排序是一种基于比较的排序算法,是选择排序家族的一部分。

堆排序类似于选择排序,它定位最大值并将其放在数组的最后位置。

所以基于选择似乎是正确的。