雜湊表python 資料結構與演算法

2021-10-03 03:45:27 字數 964 閱讀 3970

dict即字典,是python語言中重要的資料結構,在其中每乙個唯一的關鍵字(鍵)都被對映到對應的值上。

故將字典所表示的鍵和值之間的關係,通常稱之為關聯陣列或者對映。如下圖:

#新增my_dict["性別"]="女"

print(my_dict)

print(my_dict['name'])#給定鍵,通過對映找到索引

張三從上面可知,字典重要的是鍵和值之間的對映關係,確保每次對映都能產生唯一的索引,理解這一點,下面的概念就很容易理解了。

雜湊函式的目標就是將每個鍵對映到[0,n-1]區間內的整數,其中n是儲存的大小。

雜湊函式一般由:雜湊碼和壓縮函式組成。

之所以分為兩部分,優點是:

雜湊碼的計算獨於陣列的容量大小n,這樣就可以為每個物件開發乙個通用的雜湊碼,只有壓縮函式與陣列的容量有關。

雜湊衝突就是,就是在雜湊函式在對不同的鍵對映的時候產生的對映結果是相同的,有兩種雜湊衝突:

第一種:發生衝突時,一次向後尋找空的地方,儲存資料。

第二種,和第一中類似,只是向後尋找的步伐更大一點,f(i) = i^2,

資料結構與演算法 雜湊表

對映在數學上相當於乙個函式f x a b。雜湊表的核心是乙個雜湊函式 hash function 這個函式規定了集合a中的元素如何對應到集合b中的元素。根據設定的雜湊函式 h key 和處理衝突的方法 將一組關鍵字映像到乙個有限的連續的位址集 區間 上,並以關鍵字在位址集中的 像 作為相應記錄在表中...

資料結構與演算法 雜湊表

雜湊表也叫雜湊表,hash表是一種根據關鍵字值 key value 而直接進行訪問的資料結構。是把記錄的儲存位置和記錄的關鍵字之間建立對應關係的一種儲存結構。雜湊表又叫 雜湊表,速度很快,最常用的一種儲存機構是順序表 鍊錶的結構 主結構是順序表,每個順序表中的元素又對應一張鍊錶。雜湊表的常用資料結構...

資料結構與演算法 雜湊表

雜湊表 hash table,也叫雜湊表 是根據關鍵碼值 key value 而直接進行訪問的資料結構。也就是說,它通過把關鍵碼值對映到表中乙個位置來訪問記錄,以加快查詢的速度。這個對映函式叫做雜湊函式,存放記錄的陣列叫做雜湊表。如下圖,定義了16個陣列,每個陣列用來存放一條鍊錶.在插入資料時,首先...