權(quán)衡時(shí)空
HashMap是以鍵值對(duì)的方式存儲(chǔ)數(shù)據(jù)的。
如果沒(méi)有內(nèi)存限制,那我直接用哈希Map的鍵作為數(shù)組的索引,取的時(shí)候直接按索引get就行了,可是地價(jià)那么貴,哪里有無(wú)限制的地盤(pán)呢。
如果沒(méi)有時(shí)間限制的話(huà),我可以把數(shù)據(jù)放到一個(gè)無(wú)序數(shù)組中,按順序查找,遲早也能找到。可是time is money,光陰那么短暫,誰(shuí)又等得起呢。
所以,HashMap做了個(gè)折中的策略,使用適當(dāng)?shù)臅r(shí)間和空間做出了權(quán)衡,具體可以歸結(jié)為“鏈表散列法”,這是一個(gè)hash表處理沖突的經(jīng)典方法。
鏈表散列<