- 哈希函數
簡單講,將一個關鍵字通過哈希函數計算後轉換爲數組的下標將關鍵字對應的內容存貯在相應連續的數組空間裏,查找時通過關鍵字哈希化後得到相應的數組下標可以快速的訪問到內容。所以哈希表的快速性實際是借組了數組的快速性。通過哈希函數進行哈希化爲數組下標時可能會出現兩個不同關鍵字哈希化出兩個相同的數組下標的情況,稱爲地址衝突 - 開放地址法
即當哈希化後地址衝突時,通過系統的方法開闢新的地址,因爲通常情況下,哈希化對應的數組有一半是空的。當衝突時尋找下一個數組下標是否爲空,如果爲空就保存在下一個地址否則繼續尋找下一個地址…… - 鏈地址法
即當哈希化後地址衝突時,衝突的地址保存一個鏈表的鏈頭,衝突元素就插入鏈表中,Java集合框架中HashMap就是運用這種方法。
哈希表
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
紅黑樹和多叉樹介紹和理解
@hardy
2020-06-29 18:32:23
遞歸想法和實現介紹,消除遞歸
@hardy
2020-06-29 18:32:23
時間複雜度和空間複雜度(第二天)
qq_31151129
2020-06-22 00:19:59
數據結構與算法(第一天)
qq_31151129
2020-06-22 00:19:59
C語言實現單鏈表的創建、插入、刪除
RecordLiu
2020-06-15 22:25:44
C語言實現順序線性表的表示、插入、刪除
RecordLiu
2020-06-15 22:25:44
C語言實現單鏈表創建和遍歷
RecordLiu
2020-02-24 23:44:57
線性表知識點總結一(第三天)
qq_31151129
2020-02-24 04:25:09
紅黑樹和多叉樹介紹和理解
@hardy
2020-06-29 18:32:23
遞歸想法和實現介紹,消除遞歸
@hardy
2020-06-29 18:32:23
時間複雜度和空間複雜度(第二天)
qq_31151129
2020-06-22 00:19:59
數據結構與算法(第一天)
qq_31151129
2020-06-22 00:19:59