作者adrianshum (Alien)
看板java
標題Re: [問題] 請問一下有關hash table@@
時間Tue May 20 16:28:59 2008
※ 引述《Jichang (rakish)》之銘言:
[43]
: Java 處理 碰撞的方法聽說是使用 universal hashing
: 簡單的說就是 不同的 Key 對應到相同的 Index 的機率很低 ...
[43]
: 推 slalala:是超級低XD 05/20 16:16
有機會的話, 寫一個簡單程式, 開一個 HashMap,
丟幾個東西進去, 開個 Eclipse 跑 debugger,
看看 HashMap 裡面究竟放了什麼.
你會發覺collision 的機會並不是那麼低.
HashMap 起初開的時候那個 array 才十多個 element
大而已.
還有, 原 po 和之後答的那篇好像把 collision 的意思
搞錯了. Java 的 HashMap 本身就有用 linked list
來處理 collision. 同樣的 key 放進去也不要 replace,
這種根本不是 collision 了吧?! collision 指的只是
不同的 key 計算出來的 hash 值一樣, 或者對應的 index
一樣這種情況而已
alien
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 202.155.236.82
※ 編輯: adrianshum 來自: 202.155.236.82 (05/20 16:36)
推 TonyQ:我是討論KEY相同的狀況 懶得解釋collision而已 XD 05/20 17:15
推 slalala:以程式撰寫上 我也只會想到KEY相同的情況下 05/20 19:05
推 TonyQ:原po的問題在於他希望相同的key存不同的value跟誤解名詞~ 05/20 19:24
→ adrianshum:像樓上所說, 原po誤用 collision 這詞語了 05/21 10:28