アルゴリズムイントロダクション Chapter 11
ハッシュテーブル
11.1-4
SmallArray = new Array; def insert ( x ) l = SmallArray.length + 1; HugeArray[x.key] = (x, l); SmallArray[l] = x.key; SmallArray.length++; end def search ( key ) (x, l) = HugeArray[key]; if SmallArray[l] == key return x; else return nil; end
11.3-5
分母:collisionするペアの最大数。
分子:ペアの数
これが、ハッシュ関数それぞれについて成り立つから。
11.3-6
二つの違うタプルのハッシュ値が同じになるのは、差を取って0となるとき。つまり、
の時。bの取りうる値はp個で、そのうち最大n-1個が解となる(Exercise 31.4-4)ので、
が衝突する確率の上界となる。