1

最小ヒープと最大ヒープの 2 つのヒープを使用して両端優先キューを構築する方法を理解しようとしています。これまでの私の考えでは、最小ヒープを格納する配列と最大ヒープを格納する別の配列が必要であり、2 つの配列内の関連するエントリを相互に接続する方法を理解する必要があります。たとえば、値「12」が最小ヒープのどこにあるかが、値「12」が最大ヒープのどこにあるかを何らかの方法で指していることを確認する必要があります。理論的には理解していますが、実際に実装する方法がわかりません。

効率的かつ柔軟な方法で、ある配列の要素が別の配列の要素を指すようにするにはどうすればよいですか? 特に、各配列はプログラム全体で継続的に再シャッフルされるためです。

それが理にかなっているかどうかはわかりませんが、どんな助けも大歓迎です。ありがとう。

4

2 に答える 2

0

ラッパーオブジェクトを作成して、配列またはマップに保存することになります(後でIDで取得する場合)。お互いを参照する目的が何であるかがわかりませんでした。追加および削除する場合は、そのためのロジックを記述する必要があります。

于 2013-07-26T06:44:24.280 に答える