Re: [問題] STL的make_heap問題
※ 引述《flere (人間失格)》之銘言:
: 最近在研究STL好用的的部分
: 想請問一下
: <algorithm>裡面的make_heap
: 如果我想丟進去的data type是
: struct Node{
: int id,dis;
: }
: 的話,
: 然後想針對dis的部分作成heap
: 那這樣要如何操作呢??
: 不太懂要如何改寫自己想要的operator部分
: 先謝謝了: )
make_heap比較大小用的是operator< 所以
struct Node
{
int id, dis;
bool operator< (const Node& b) const { return dis < b.dis; }
};
make_heap是建max heap 如果要min heap改成return dis > b.dis
也可以改用STL的priority queue
#include <queue>
std::priority_queue<Node> pq;
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.204.17.224
推
12/04 14:10, , 1F
12/04 14:10, 1F
→
12/05 23:59, , 2F
12/05 23:59, 2F
→
12/06 00:00, , 3F
12/06 00:00, 3F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章
12
40