數據結構-哈希表的一點小總結


  • 哈希表基於數組
  • 關鍵字值的范圍通常比數組的容量大
  • 關鍵字值通過哈希函數映射為數組的下標
  • 英文字典是一個數據庫的典型例子,他可以有效的用哈希表來處理
  • 沖突可以用兩種方法解決,開放地址法和鏈地址法
  • 在開放地址中,把沖突的數據項放在數組的其他位置
  • 在鏈地址法中,每個數組單元包含一個鏈表。把所有映射到同一個數組下標的數據項都查到這個鏈表中。
  • 討論了三中開發地址發:線性探測,二次探測,再哈希法
  • 在線性探測中,步長總是為1,所以如果x是哈希函數計算得到的數組下標,那么探測序列就是x,x+1,x+2,x+3,以此類推
  • 找到一個特定項需要經過的步數叫做探測長度
  • 在線性探測中,已填充單元的長度不斷增加,它們叫做首次聚集,這會降低哈希表的性能
  • 裝填因子是表中數據項和數據容量的比值
  • 開放地址發中的最大裝填因子應該在0。5附近。
  • 在開放地址發中,當裝填因子接近1時,查找時間趨近於無限
  • 對於鏈地址法,裝填因子是1比較合適。

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com