【學習筆記】哈希表、字典、集合知識點

哈希表 Hash Table

  • 哈希表,也叫散列表,是根據關鍵碼值(key-value)而直接進行訪問的數據結構。
  • 通過將關鍵碼值映射到表中的一個位置來訪問記錄,以加快查找的速度。
  • 這個映射函數叫做散列函數(Hash Function),存放記錄的數組叫做哈希表(或者叫散列)
    哈希函數如下圖:
    在這裏插入圖片描述
    哈希衝突:不同的要存儲的數據經過哈希函數返回相同的值,稱爲哈希衝突
    哈希衝突如下圖:
    在這裏插入圖片描述
    工程實踐:
  1. 電話號碼簿
  2. 用戶信息表
  3. 緩存 LRU Cache
  4. 鍵值對存儲 Redis
    一般認爲 HashTable 添加/刪除元素的時間複雜度爲 O(1),特殊情況是哈希表開的比較小,出現了哈希衝突,這時候可以通過把相同的值拉一個鏈表解決。

HashTable 具體到應用層面:

1.字典dict:key-value對,key不重複,value 可以重複
2.集合set :不重複元素的集合

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章