好的,以下是Java语言实现堆排序的代码:
public class HeapSort {
public void sort(int[] arr) {
int n = arr.length;
// 建堆(将数组变为最大堆)
for (int i = n / 2 - 1; i >= 0; i--)
heapify(arr, n, i);
// 一个一个从堆顶取出元素,放到数组末尾
for (int i = n - 1; i > 0; i--) {