从刚才除留余数法的例子也可以看出,我们设计得再好的散列函数也不可能完全避免冲突,既然冲突不能避免,就要考虑如何处理它。那么当我们在使用散列函数后发现两个关键字key 1 ≠key 2 ,但是却有f(key 1 )=f(key 2 ),即有冲突时,怎么办呢?我们可以从生活中找寻思路。

    试想一下,当你观望很久很久,终于看上一套房打算要买了,正准备下订金,人家告诉你,这房子已经被人买走了,你怎么办?对呀,再找别的房子呗!这其实就是一种处理冲突的方法——开放定址法。