本文主要是介绍make_heap精简实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
闲来无事,实现下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精简实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!