闲来无事,实现下make_heap函数
void makeHeap(int* a,int p,int r){
a += (p-1);
int n = r - p + 1;
for(int i=2;i<n;i++){
int c = i;
int cp = c/2;
while(cp>=1 && a[cp]<a[c]){
swap(a[cp],a[c]);
c = cp; cp = c/2;
}
}
a -= (p-1);
}
闲来无事,实现下make_heap函数
void makeHeap(int* a,int p,int r){
a += (p-1);
int n = r - p + 1;
for(int i=2;i<n;i++){
int c = i;
int cp = c/2;
while(cp>=1 && a[cp]<a[c]){
swap(a[cp],a[c]);
c = cp; cp = c/2;
}
}
a -= (p-1);
}