Мне было интересно, когда C ++ STL priority_queue
сортирует себя. Я имею в виду, вставляет ли он его
в правильное место, когда вы нажимаете
элемент, или он сортирует сам себя и дает вам элемент с наивысшим приоритетом, когда вы заглядываете
] или вытолкнуть
? Я спрашиваю об этом, потому что моя priority_queue
будет содержать индекс массива, который может иметь обновления значений, и я хочу, чтобы он обновлялся, когда я выполняю pq.top ();
.
#include <cstdio>
#include <algorithm>
#include <queue>
using namespace std;
int main() {
priority_queue<int> pq;
pq.push(2);
pq.push(5); //is the first element 5 now? or will it update again when I top() or pop() it out?
return 0;
}
Спасибо.