在C++中拥有堆实现

bar*_*kmp 1 c++ algorithm heap

我必须在C++中编写自己的堆实现,它存储类型为的对象:

std::pair<City, int>
Run Code Online (Sandbox Code Playgroud)

City是一个存储两个整数的结构,代表城市坐标和字符串 - 城市名称.我确实知道如何用普通整数做这个,但是使用一对值对我来说有点问题.我已经开始编写我的堆类,但是,正如我所说,我不知道如何使用这些对.我希望堆按对的int值排序.

Rei*_*ica 5

如果你知道如何为ints 做,你几乎就在那里.pairint分配时对待对象一样对待对象,但为了进行比较,请.second直接使用而不是值.