辞書内のテキスト文字列がセットの要素があるか否かが判定されるか否かを決定します

テキストは辞書に単語が含まれているかどうかを確認

ブルームアルゴリズム

ブルームフィルタは、どのような状況下で必要? - 高いメモリを避けます

より一般的な例のいくつかをまず見て

  • ワープロソフトは、英語の単語のスペルが正しいかどうかを確認する必要があります
  • FBIでは、容疑者の名前は、容疑者のリストに既にあります
  • URLが訪問されているクローラで
  • ヤフー、Gmailや他のメールスパムフィルタ

これらのいくつかの例は、一つの共通点てきた:  どのようにコレクション内の要素があるかどうかを判断するには?

従来の考え方

  • 配列
  • リスト
  • ツリー、平衡二分木、トライ
  • 地図(赤黒木)
  • ハッシュテーブル

低辞書メモリについては、次のように:

1  
インポートjieba 2 DEF :(S)チェック 3 huangfan_path = ' パス/ TO / dict.txt ' 4 jieba.load_userdict(huangfan_path) 5 huangfan_words_dict = )セット( 6 オープン(huangfan_pathと' RB ' FRとして): 7 ためにおけるfr.readlines(): 8 huangfan_words_dict.add(line.strip()(デコード。' UTF-8 ' )) 9 戻りセット(jieba.lcut(S))&self.huangfan_words_dict

 

おすすめ

転載: www.cnblogs.com/cupleo/p/11410564.html