我正在尝试使用库函数 make_heap 构建一个最小堆。请指出类比较中的错误。根元素应该是数组中的最小元素,但它不是。
#include<iostream>
#include<map>
#include<algorithm>
using namespace std;
class compare {
bool operator()(pair<int, int> lhs,pair<int, int> rhs) const
{
return lhs.second < rhs.second;
}
};
int main()
{
int arr[]={9,2,5,7,3,5,7,5,4,5,6,4,5};
make_heap(arr,arr+13,compare);
cout<<arr[0];
}