erasable_priority_queue
クラス · 削除可能優先度付きキュー
template <class T, class Comp = std::less<>>
struct erasable_priority_queue;
概要
削除可能優先度付きキュー
メンバ関数
| 名前 | 説明 | 計算量 |
|---|---|---|
empty |
空か返す | $O(1)$ |
size |
論理的な要素数を返す | $O(1)$ |
top |
最上位の値を返す | $O(1)$ |
insert |
(1) 値を追加する (2) 値をムーブして追加する |
$O(\log n)$ |
push |
(1) 値を追加する (2) 値をムーブして追加する |
$O(\log n)$ |
emplace |
値を直接構築して追加する | $O(\log n)$ |
pop |
最上位の値を削除する | 償却 $O(\log n)$ |
erase |
指定した値を1つ遅延削除する | 償却 $O(\log n)$ |
メンバの詳細
insert
// (1)
void insert(const T &x);
// (2)
void insert(T &&x);
(1) 値を追加する
- 計算量: $O(\log n)$
(2) 値をムーブして追加する
- 計算量: $O(\log n)$
push
// (1)
void push(const T &x);
// (2)
void push(T &&x);
(1) 値を追加する
- 計算量: $O(\log n)$
(2) 値をムーブして追加する
- 計算量: $O(\log n)$
erase
// (1)
void erase(const T &x);
// (2)
void erase(T &&x);
(1)、(2) 指定した値を1つ遅延削除する
- 計算量: 償却 $O(\log n)$