priority_queue_emplace

priority_queue_emplace (std::priority_queue::emplace — 제자리 삽입)

std::priority_queue에 새 원소를 제자리(in-place) 구성해 push하는 멤버 함수예요.

출처: cppreference

본문

시그니처는 다음과 같아요.

template< class... Args >
void emplace( Args&&... args );   // (since C++11)

새 원소를 우선순위 큐에 push해요. 원소는 제자리에서 구성돼요. c.emplace_back(std::forward<Args>(args)...)std::push_heap(c.begin(), c.end(), comp)를 수행하는 것과 동등해요.

매개변수

  • args: 원소의 생성자에 전달할 인자들.

복잡도

로그(logarithmic)예요.

예제

#include <iostream>
#include <queue>
int main()
{
    std::priority_queue<int> pq;
    pq.emplace(3);
    pq.emplace(1);
    pq.emplace(2);
    std::cout << pq.top() << '\n';   // 3
}

더 알아보기 (Learn more)

cppreference