Priority Queue é um tipo de contêiner, que permite alcançar uma velocidade de acesso constante ao máximo (ou mínimo) elemento (O(1)), aumentando a velocidade de inserção de elementos no contêiner para logarítmico (O(logn)).
Operadores Básicos:
início - Acessando o elemento superior
tamanho - Retorna o número de elementos no contêiner
empurrar - insere um elemento e classifica o contêiner subjacente
pop - remove o primeiro elemento
Exemplo de obtenção do máximo:
#include <iostream>
#include <queue>
#include "stdio.h"
usando namespace std;
principal()
{
priority_queue <int>p_fila;
int N,a;
scanf("%d",&N);
para(int i = 0;i<N;i++)
{
scanf("%d",&a);
p_queue.push(a);
}
cout<<p_queue.top();
}