對於任何雜湊函式,我們都可以說,如果表大小 m 遠小於宇宙大小 u,那麼對於任何雜湊函式 h,U 的一些大的子集具有相同的雜湊值。為了解決這個問題,我們需要一組雜湊函式,從中我們可以選擇任何一個對 S 很好用的函式。如果大多數雜湊函式對 S 更好,我們可以選擇隨機雜湊函式。假設 ℌ 是一組雜湊函式。我們可以說 ℌ 是通用的,如果對於每個 x, y ∈ U,... 閱讀更多
這裡我們將討論乘法雜湊方法。為此,我們使用雜湊函式 −ℎ(𝑥) = ⌊𝑚𝑥𝐴⌋ 𝑚𝑜𝑑 𝑚 這裡 A 是一個實值常數。這種方法的優點是 m 的值不是那麼關鍵。我們也可以將 m 作為 2 的冪。雖然任何 A 值都可以給出雜湊函式,但某些 A 值比其他值更好。根據 Knuth 的說法,我們可以使用黃金分割率作為 A,所以 A 將是$$A=\frac{\sqrt5-1}{2}=0.61803398$$當然,無論為 A 選擇什麼值。鴿巢原理意味著如果 u ≥ ... 閱讀更多
與二項堆類似,斐波那契堆是樹的集合。它們鬆散地基於二項堆。與二項堆中的樹不同,斐波那契堆中的樹是根植的但無序的。斐波那契堆中每個節點 x 都包含一個指向其父節點的指標 p[x],以及一個指向其任何一個子節點的指標 child[x]。x 的子節點透過一個稱為 x 的子列表的迴圈雙向連結串列連結在一起。子列表中的每個子節點 y 都有指標 left[y] 和 right[y] 分別指向 y 的左右兄弟。如果節點 y 只是... 閱讀更多