Python 的 dict 为什么查询是 O(1)?拆开哈希表、扰动函数与扩容阈值
掘金 · score 44.0 · 10/29/2026, 3:03:30 AM
掘金 · score 44.0 · 10/29/2026, 3:03:30 AM
很多人背过一句话:"Python 的字典查询是 O(1) 的。"但真到了面试或者调性能的时候,这句话经不起两问:凭什么是常数?常数就不是要算哈希吗?哈希不要时间?今天我们就把 CPython 3.13
很多人背过一句话:"Python 的字典查询是 O(1) 的。"但真到了面试或者调性能的时候,这句话经不起两问:凭什么是常数?常数就不是要算哈希吗?哈希不要时间?今天我们就把 CPython 3.13