C に固執する必要があり、C++ を使用できないため、boost:hash を使用できません。
しかし、多数 (10K から 100K) のトークン文字列 (5 から 40 バイトの長さ) をハッシュして、それらの中の検索を最速にする必要があります。
MD5、SHA1、または任意の長いハッシュ関数は単純なタスクには重すぎるようです。私は暗号化を行っていません。さらに、ストレージとコンピューティングのコストがかかります。
したがって、私の質問:
ほとんどの実際のケースで衝突防止を保証する最も単純なハッシュ アルゴリズムは何でしょうか。
ハッシュ値に使用するビット数は? 私は32ビットシステム用に開発しています。Perl/Python のハッシュ アルゴリズムも 32 ビット ハッシュを使用しますか? または、64 にジャンプする必要がありますか?
一般的なスクリプト言語でのハッシュ テーブルの実装について: 実装は衝突をチェックしますか、それともその部分を完全に回避できますか?