《数据结构与算法分析——c语言描述》 练习6.22 6.26 答案
代码会写,复杂度不会算。。。
相同的代码
PriorityQueue buildHeap(ElementType * arr, int n) {
std::queue<PriorityQueue> q;
for (int i = 0; i < n; i++) {
q.push(insert(arr[i], NULL));
}
while (q.size() > 1) {
PriorityQueue h1 = q.front();
q.pop();
PriorityQueue h2 = q.front();
q.pop();
q.push(merge(h1, h2));
}
return q.front();
}