數據結構與算法分析(查找)

靜態查找表

二叉排序樹

平衡二叉樹

B-樹和B+樹

哈希表(查找)

散列或哈希
Hash 是把任意長度的輸入通過散列算法變換成固定長度的輸出,該輸出就是散列值。這種轉換是一種壓縮映射,也就是,散列值的空間通常遠小於輸入的空間,不同的輸入可能會散列成相同的輸出,所以不可能從散列值來確定唯一的輸入值。

哈希表
給定表 M,存在函數 f(key),對任意給定的關鍵字值 key,代入函數後若能得到包含該關鍵字的記錄在表中的地址,則稱表 M 爲哈希 (Hash)表,函數 f(key) 爲哈希(Hash) 函數。
對不同的關鍵字可能得到同一散列地址,即 k1≠k2,而 f(k1)=f(k2),這種現象稱爲衝突

處理衝突

  • 鏈地址法
  • 開放尋址法:線性探測法、二次探測、雙重散列
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章