Javaで削除効率の良い優先度付きキューとして使えるクラスはありますか?
Java SEコアAPIに次の条件を満たすコンテナクラスは用意されているでしょうか。
(1)重複要素を許す
(2)最大値/最小値の取得がO(1)
(3)任意の要素の削除がO(log(n))
STLではmultisetがこれらの性質を満たしています。一方Javaでこのようなクラスを探してみたところ、近いものとしてPriorityQueueとTreeSetが挙がりました。 しかし前者は削除に線形時間かかり、後者は重複要素を許さないため条件に合いませんでした。
TreeSetとタプルを使えば同じことを実現できると思いますが、先に挙げた性質を満たすクラスがあるかどうかを知りたいです。