我正在使用 Djikistra 算法,这是我第一次实现它。
但我不知道如何使用两个参数声明priority_queue。
对于1个参数(min-priority_queue)我可以轻松做到:
priority_queue<int,std::vectors<int>,std::greater> >
最佳答案
使用 std::pair,其中第一个是距离,第二个是顶点数。
typedef std::pair<int, int> pii;
std::priority_queue<pii, std::vector<pii>, std::greater<pii> > dijkstra_queue;
关于algorithm - std::priority_queue 接受 2 个参数(对于 Djikistra 算法),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14874916/