0

Collections.binarySearch() メソッドを使用して PriorityQueue 内の要素を検索できますか? それ以外の場合、検索アルゴリズムを PriorityQueue に適用するにはどうすればよいですか?

私はこれを持っています(クラスEventoはComparableを実装しています):

    public class PriorityQueueCAP extends PriorityQueue<Evento>{

       // (...)

       public void removeEventos(Evento evento){

           Collections.binarySearch(this, evento); // ERROR!

       }
    }

そして、私はこのエラーを受け取りました:「型 Collections のメソッド binarySearch(List>, T) は、引数 (PriorityQueueCAP, Evento) には適用できません」

なんで?

前もって感謝します!

4

2 に答える 2

5

検索アルゴリズムをプライオリティ キューに適用しないでください。プライオリティ キューは、コレクション内の最も優先度の高い要素への効率的なアクセスを提供するように設計されており、それだけです。

これがおそらくあなたが望んでいた答えではないことはわかっています。意図しない目的でツールを使用することから生じる問題が多すぎるのを見てきたので、警告の言葉を提供する必要があると感じました。

于 2010-05-21T22:00:55.797 に答える
0

このチュートリアルでは、コレクションを開始する方法と、コレクションに対して実行できる操作について説明します。エリクソンが言ったことを心に留めておくべきです。

于 2010-05-21T22:16:28.290 に答える