問題タブ [priority-queue]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Javaで優先キューを書き込もうとしましたが、「スレッド「メイン」java.lang.ClassCastExceptionで例外が発生しました」
私のデータ構造クラスでは、洗車をシミュレートするプログラムを作成しようとしています。優先キューを使用して、高級車に通常の車よりも高い優先度を与えたいと考えています。私が抱えている問題は、Javaが「Object」を「ArrayQueue」(単純なFIFO実装)として型キャストできないことに関係しています。何が間違っているので、どうすれば修正できますか?
編集
この質問への迅速な回答をありがとうございました。私はあなたのアドバイスともう1つのコードに従うことで問題を解決しました:
c++ - STL priority_queue の効率
STL で十分に機能すると思われるアプリケーション (C++) がありますpriority_queue
。 ドキュメントには次のように記載されています。
Priority_queue はコンテナー アダプターです。つまり、基になるコンテナー タイプの上に実装されます。デフォルトでは、基になる型は vector ですが、別の型を明示的に選択することもできます。
と
プライオリティ キューは標準的な概念であり、さまざまな方法で実装できます。この実装はヒープを使用します。
私は以前、それが であり、それが(最初に を選択した 2 つの理由) であると想定していましたが、ドキュメントではこの仮定を確認も否定もしていません。top()
O(1)
push()
O(logn)
priority_queue
さらに深く掘り下げると、シーケンスの概念に関するドキュメントには次のように書かれています。
単一要素の挿入と消去の複雑さは、シーケンスに依存します。
は(デフォルトで) をヒープとしてpriority_queue
使用します。vector
... 要素へのランダム アクセス、最後に要素を一定時間挿入および削除する機能、および最初または途中で要素を線形時間挿入および削除する機能をサポートします。
priority_queue
デフォルトを使用して、top()
isO(1)
およびpush()
isであると推測していますO(n)
。
質問 1:これは正しいですか? (top()
アクセスはO(1)
ありpush()
ますO(n)
か?)
質問 2:の実装に(または) の代わりに(または)を使用した場合、O(logn)
効率を上げることができますか? これを行うと、どのような結果が生じるでしょうか。結果として、他にどのような操作が影響を受けるでしょうか?push()
set
multiset
vector
priority_queue
NB: ここで気になるのは時間効率であって、スペースではありません。
java - カスタム ヘッダーによって設定される JMS プライオリティ
カスタム ヘッダー値に従って、JMS ブローカ内のメッセージに優先順位を付ける方法はありますか?
例: 「購入日」。古いものを最初に取得するなど。
お知らせ下さい。
java - Java: カスタム コンパレータから正しくない順序を返す PriorityQueue?
ノード クラスを比較するカスタム コンパレータを作成しましたが、Java プライオリティ キューがアイテムを正しい順序で返しません。
ここに私のコンパレータがあります:
getF は double を返します。ただし、いくつかのノードを優先キューに挿入した後、次を使用してそれらを出力します。
結果は次のとおりです。
これがなぜそうなのか、何か考えはありますか?私のコンパレータは間違っていますか?ありがとう。
マイク
c++ - STL プライオリティ キュー - アイテムの削除
C++ STL priority_queueコンテナー アダプターを使用して、タイマー キューイング システムを実装したいと考えています。
私の問題は、タイマーを時々キャンセルしたいということですが、最上位のアイテムではないpriority_queue内のアイテムを簡単に削除できるインターフェイスがありません。
助言がありますか?。
ご協力ありがとうございました。
java - プライオリティキューにプッシュ
int をプライオリティキューにプッシュしたいのですが、できません! queue.add() コードを使用しましたが、このコードはソートされたキューを返します。助けてください、ありがとう!
ruby-on-rails - Delayed_jobカスタム失敗アサーション?
優先キューにdelayed_jobを使用しています。失敗したジョブとは何かをどのように定義すればよいのでしょうか。
ありがとう。
java - 効率的な優先リスト
優先順位リストを表す効率的なデータ構造を探しています。具体的には、一連のアイテムに優先度を割り当て、最高得点のアイテムのみを返す必要があります。ヒープ上で動作するプライオリティ キューを調べましたが、実際には私のニーズに合わないようです。キューから最高評価のアイテムをポーリングするとすぐに、ヒープ構造が再編成されます。
もちろん、最も簡単な解決策はリンクされたリストですが、最悪の場合、挿入操作にかなりの時間がかかります。
誰かがより良い解決策を持っていますか?
c++ - c++ でプライオリティ キューを使用するにはどうすればよいですか?
たとえば、priority_queue<int> s;
いくつかの要素を含む which があります。次のコードの正しい形式は次のとおりです。
python - Python プライオリティ キューの作成
Python で優先度キューを作成したいと思います。このキューには、優先度番号を持つさまざまな辞書が含まれています。したがって、「get 関数」が呼び出されると、優先度が最も高い (最小の番号) を持つ辞書がキューから取り出され、「関数の追加」が呼び出されると、新しい辞書がキューに追加され、それに基づいて並べ替えられます。優先番号。
助けてください...
前もって感謝します!