2. 假設我們使用雜湊(hashing)法來建立整數關鍵詞(integer key)的雜湊表(hash table),雜湊 表的大小為 7,包含第一個位置到第七個位置。雜湊函數(hash function)為 h(x)=(x%7)+1, 其中 x 為整數關鍵詞,%為 modulo operator,h(x)為 x 存在雜湊表裡的位置。解決碰撞 (collision)的方法為線性開放尋址(linear open addressing)法。我們依序輸入 12, 26, 1, 68 後,請問 26 存在雜湊表裡的第幾個位置?
詳解 (共 10 筆)
白龍@菜鳥公務員(107/10/29)
詳解 #2803116
1. 12%7=5,5+1=6 ((12放位置6
2. 26%7=5,5+1=6 ((碰撞,故將26往後放位置7
3. 1%7=1,1+1=2 ((1放位置2
4. 68%7=5,5+1=6 ((碰撞並往後,又碰撞但位置為1~7,故循環將68放位置1
Monkey
詳解 #3265793
12%7+1 = 5+1 =6
26%7+1= 5+1 =6 ,但因為碰撞 6+1=7
Tin(上岸)
詳解 #4608935
吳彥均
詳解 #2946375
(12%7)+1 = 6
(26%7)+1 = 6(碰撞+線性) = 6+1 = 7
(1%7)+1 = 2
(68%7)+1=6 (碰撞+線性) =6+1+1=1
知識學習者
詳解 #3133519
第7個位置
Marvin Lee
詳解 #5567070
7
(共 3 字,隱藏中)
前往觀看
Ying Lun
詳解 #3298674
7
jo6 tp6
詳解 #2996170
1 2 3 4 5 6 7
(12%7)+1=6
(26%7)+1=6(衝突)
6+1=7(線性搜尋
容
詳解 #4422373
7
(共 3 字,隱藏中)
前往觀看
小銘
詳解 #2955002
1
(共 3 字,隱藏中)
前往觀看