摘要:
set请写出堆排序的代码。输入n个整数,找出其中最小的k个数。1、思路: 堆排序分为建堆(insertion)和取根数据(delete root)。每一步都涉及到堆调整,堆调整算法的时间复杂度为O(logn)。HeapSort 1 #include <stdio.h> 2 3 #define heap_parent(npos) ((int)(((npos) - 1) / 2)) 4 #define heap_left(npos) ((npos) * 2 + 1) 5 #define heap_right(npos) ((npos) * 2 + 2) 6 7 void Swap(in 阅读全文