因此,假设您有一个使用线性探测的哈希图。
你首先插入一个带有键 X 的值 X,它散列到位置 5,比如说。
然后,您插入一个带有键 Y 的值 Y,它也散列为 5。它将占用位置 6。
然后插入一个带有键 Z 的值 Z,它也散列为 5。它将占用位置 7。
然后删除 Y,所以内存看起来像“X,null,Z”
然后您尝试使用键 Z 插入一个值,它会检查 5,看到它已被占用,检查 6,然后将其插入为空。但是,已经有一个键为 Z 的条目,因此您将有两个键为 Z 的条目,这违反了不变量。
因此,在找到值本身之前,您是否不需要遍历整个地图。如果未找到,则可以将其插入第一个空空间。因此,在某个键上的所有首次插入不是 O(N) 吗?