堆排序 堆排序 实现代码 优化 堆排序 堆排序:利用自己写的最大堆或者java库中的PriorityQueue优先队列类,可以进行堆排序。把数组每个数放进堆里面,PriorityQueue优先队列类默认最小堆,那么每次从堆中取值都是当前堆中最小值,所以依次放入数组即可,时间复杂度是O(nlogn)。 实现代码 private void heapSort(int[] array , int n) { //MaxHeap<Integer> heap = new MaxHeap<>(n); PriorityQueue<Integer