web-dev-qa-db-ja.com

Brodalキューの疑似コード

Brodal heap に関するリソースをもっと探しています。私が見つけたすべては Brodal-Okasakiヒープのhaskell実装 ですが、私はそれらが skew heapsであると考えます 、これは正しいですか?さらに、私はHaskellで読み書きができないので、あまり役に立ちません。誰かが疑似コード、C、C++、PythonでBrodalキューを実装しています(または知っていますか)?

上記の私の仮定が間違っている場合も修正してください。

12
Kimvais

Haskellの実装は、関数型の Brodal-Okasakiヒープ に基づいており、そうです。これは、スキューヒープのバリエーションです。論文は非常に明確に書かれているので、良い情報源になるでしょう。

実装に関しては、Scala as の一部 scalazライブラリにも実装があります。

2
maayank

コードをHaskellではないものに変換する方法をまだ理解していないため、これは部分的な回答です。 Haskellを使用する必要があると私が知る限り、Haskellは怠惰です。 Brodal-Okasakiヒープは、紙から怠惰な方法で実行する必要があります。したがって、BOヒープが必要とする可能性のある他の要件(純粋に機能的なデータ構造など)とともに、その機能を別の言語に提供する方法が必要です。

1
World Engineer