摘要: Hashing定義了一種將字符組成的字符串轉(zhuǎn)換為固定長度(一般是更短長度)的數(shù)值或索引值的方法,稱為散列法,也叫哈希法。由于通過更短的哈希值比用原始值進(jìn)行數(shù)據(jù)庫搜索更快,這種方法一般用來在數(shù)據(jù)庫中建立索引并進(jìn)行搜索,同時還用在各種解密算法中。
設(shè)所有可能出現(xiàn)的關(guān)鍵字集合記為U(簡稱全集)。實際發(fā)生(即實際存儲)的關(guān)鍵字集合記為K(|K|比|U|小得多)。|K|是集合K中元素的個數(shù)。
散列方法是使用函數(shù)hash將U映射到表T[0..m-1]的下標(biāo)上(m=O(|U|))。這樣以U中關(guān)鍵字為自變量,以h為函數(shù)的運算結(jié)果就是相應(yīng)結(jié)點的存儲地址。從而達(dá)到在O(1)時間內(nèi)就可完成查找。
……
閱讀全文