C++用模板函数实现堆排序
代码
#include<iostream>
#include<set>
#include<map>
#include<algorithm>
using namespace std;
template<typename T>
void adjustHeap(T *k,T i,T n) { //i为结点位置 n为数组大小
int temp=k[i]; //这是此结点的值 堆排序比较顺序 从左往右 从上到下
int j=i*2; //左结点 注意数组从0开始 左结点 2*i+1 数组从1开始那么就是2*i