Zig HashMap 原理介紹上篇
引言如大多數哈希映射實現一樣,Zig 的 std.HashMap 依賴於兩個函數:hash(key: K) u64 和 eql(keya: K, keyb: K) bool。其中,哈希函數接收一個鍵並返回一個無符號的 64 位整數作爲哈希碼。相同的關鍵字總是會返回相同的哈希碼。然而,爲了處理不同的鍵可能生成相同哈希碼的情況(即碰撞),我們還需要 eql 函數來確定兩個鍵是否相等。這是一些標準做法, ⌘ Read more
Zig HashMap 原理介紹上篇
引言如大多數哈希映射實現一樣,Zig 的 std.HashMap 依賴於兩個函數:hash(key: K) u64 和 eql(keya: K, keyb: K) bool。其中,哈希函數接收一個鍵並返回一個無符號的 64 位整數作爲哈希碼。相同的關鍵字總是會返回相同的哈希碼。然而,爲了處理不同的鍵可能生成相同哈希碼的情況(即碰撞),我們還需要 eql 函數來確定兩個鍵是否相等。這是一些標準做法, ⌘ Read more