Juliaの理想的なリストのようなデータ構造は何ですか?効率的な追加のためにJuliaで推奨されるデータ構造
私は、一定時間の追加操作でインデックス可能で拡張可能なコレクションが必要です。
標準データ構造は、push!
操作でArray
と思われます。これは一定の時間ですか?
Juliaの理想的なリストのようなデータ構造は何ですか?効率的な追加のためにJuliaで推奨されるデータ構造
私は、一定時間の追加操作でインデックス可能で拡張可能なコレクションが必要です。
標準データ構造は、push!
操作でArray
と思われます。これは一定の時間ですか?
繰り返し呼び出すpush!
は一定の時間ではありませんが、かなり高速です。バッファの時々の指数関数的な再割り当てを行うことがあります。アレイに追加するCソースを参照してください。https://github.com/JuliaLang/julia/blob/master/src/array.c#L564
ハーランは言ったように、push!
は一定時間償却されます。引数については、C++の同様のデータ構造の説明を参照してください。Amortized analysis of std::vector insertion
正当に一定の時間データ構造が必要な場合は、おそらくリンクリストを実装したいと考えています。私はサンプル実装の多くを見てきましたが、プロダクションの準備はできていません。
償却された一定の時間は私にとってうまくいきます!ほとんど私は興味がありました。 – MRocklin