Entry

プログラミング・メモ - ハッシュ関数の性能メモ(補遺)

2007年09月25日

前回のエントリでは,サンプルに日本語があったので,ASCII 文字だけの場合をちょっとテスト。サンプルに使わせてもらったのは,「Download Dictionary or Build Your Own Dictionary from Text (Password Recovery)」からいただいた,medium-sized dictionary です。dictionary attack に使われるようなもんなので,ちょっとアレなんですが……(ここにあるようなパスワードは使わないようにしましょう,ということで)。

収録語数は,213560語ということで,SKK-JISYO.L よりも大きな辞書です。で,結果はこちら。

aian:~ % ./hash < DICT.TXT
0       : 2605 (3.97491 %)
1       : 8322 (12.6984 %)
2       : 13224 (20.1782 %)
3       : 14505 (22.1329 %)
4       : 11692 (17.8406 %)
5       : 7726 (11.7889 %)
6       : 4229 (6.45294 %)
7       : 1994 (3.0426 %)
8       : 805 (1.22833 %)
9       : 298 (0.454712 %)
10      : 91 (0.138855 %)
11      : 33 (0.050354 %)
12      : 8 (0.012207 %)
13      : 2 (0.00305176 %)
14      : 2 (0.00305176 %)
MAX  : 14
AVE  : 3.25867

やはり,かなりまとまる。まぁ,あたしの野暮用では,213560語もシンボルを登録することはまずなくて,せいぜい100語くらいだったりします。今回の関数を使う限り,16bitのハッシュテーブルを用意した時点で,衝突する場合は極例外になると見て良さそうな感じ。

Trackback
Trackback URL:
Ads
About
Search This Site
Ads
Categories
Recent Entries
Log Archive
Syndicate This Site
Info.
クリエイティブ・コモンズ・ライセンス
Movable Type 3.36
Valid XHTML 1.1!
Valid CSS!
ブログタイムズ

© 2003-2012 AIAN