雜湊 (Hashing)#
雜湊(Hash)是電腦科學中最重要的概念之一。雜湊表提供 O(1) 的查找效率,雜湊演算法則廣泛應用於加密、校驗、分布式系統等領域。
雜湊表的本質#
雜湊表是陣列的擴展:
| 結構 | 存取方式 | 複雜度 |
|---|---|---|
| 陣列 | 透過下標直接存取 | O(1) |
| 雜湊表 | 透過 key 計算出下標 | O(1) |
key → hash(key) → index → array[index]雜湊表的效能取決於:
- 雜湊函式的設計(是否均勻分布)
- 衝突解決策略的選擇
- 裝載因子的控制
跨倉庫導讀#
- 對應 LeetCode 練習:Array & Hashing ↗