A ブルームフィルタは、効率的にさまざまな値がすでに処理中に遭遇したかどうかを追跡することが可能となります。データアイテムが多数ある場合、ブルームフィルターを使用すると、ハッシュテーブルのメモリを大幅に節約できます。ハッシュテーブルと共有するブルームフィルターの主な機能は、アイテムが新しいものではない場合は常に「not new」と表示することですが、アイテムに「not new」のフラグが立てられる確率はゼロではありません「新しい場合でも。
逆の動作をする「アンチブルームフィルター」はありますか?
言い換えれば、アイテムが新しい場合は「新しい」と言う効率的なデータ構造がありますが、新しいものではないアイテムについては「新しい」と言うこともありますか?
以前に表示されたすべてのアイテムを(たとえば、並べ替えられたリンクリストに)保持することは最初の要件を満たしますが、大量のメモリを使用する場合があります。緩和された2番目の要件を考えると、それも不要であることを願っています。
より正式な治療、書き込み好む人のためにブルームフィルタを考えれば新しいもので、それ以外の場合は、書き込みならば本当に新しいとされそれ以外の場合。
次に、 ; ; ; 、いくつかのために。
私が求めています:機能実現、効率的なデータ構造が存在しない一部と、そのようなこと ; ; 。?
編集:https: //stackoverflow.com/questions/635728 および/cstheory/6596としてStackExchangeでこの質問が以前に尋ねられたようです。 「の値を逆にすることで、やることは簡単です。「正しい」答えが何であるかは私にはまだ明らかではありません。何で明確なことは(イルマリKaronenによって提案された1など)は、むしろうまく機能し、ある種のLRUキャッシュ方式は、実装するのは容易なことである、と私のコードを実行するのに要する時間が50%減少しました。