2

多数の整数を格納する必要があります。整数の入力ストリームに重複がある可能性があります。それらの間で個別に格納する必要があります。最初はstlsetを使用していましたが、整数の入力数が多すぎるとOutOfMemになりました。私は、ファイルに裏打ちされた可能性のある上記の要件で番号を格納できるC ++コンテナライブラリを探しています。つまり、コンテナはすべての番号をメモリ内に保持しようとすべきではありません。このデータを永続的に保存する必要はありません。データの中から一意の値を見つける必要があります。

4

4 に答える 4

1

STXXLを見てください。あなたが探しているものかもしれません。

編集:私はそれを自分で使用したことはありませんが、ドキュメントから-stream::runs_creatorデータのソートされた実行を作成し(メモリに収まる量)、stream::runs_mergerソートされたストリームをマージし、最後に一意のものstream::uniqueをフィルタリングするために使用できます。

于 2010-06-03T14:58:33.173 に答える
0

RAMが許可するよりも大きい必要があるため、memcachedを見ることができます

于 2010-06-03T14:54:15.340 に答える
0

データベースが遅すぎると結論付ける前に、少なくともデータベースを真剣に試してください。必要なのは、軽量のキー値ストアの 1 つだけです。過去にBerkeley DBを使用したことがありますが、他のもののリストは次のとおりです。

于 2010-07-26T22:51:30.493 に答える
0

DB (おそらくSQLite ) の使用を検討しましたか? それとも遅すぎるでしょうか?

于 2010-06-03T15:13:13.403 に答える