哈希游戏- 哈希游戏平台- 哈希游戏官方网站
从上面的例子可知顺序查找方法效率不高,但是我们还有其他查找方法,如:折半查找,它是建立在数据存放有序的基础上的,过程是:先确定待查记录所在范围,然后逐步缩小范围直到找到或找不到该记录为止。这类似我们在书中找某一页的过程,比如有一本非常厚的书(3000),要找到1076页,我们一般会翻到书的中间,看一下当前页数为多少,假如是1400页,那么你就会缩小查找的范围(从第1页到1400页),接着又在这个范围中用相同的方法找。
如果希望不经过任何比较,一次存取便能得到所查记录,那就必须在记录的存储位置和它的关键字之间建立一个确定的对应关系F,使每个关键字和唯一的存储位置相对应。因而在查找时,只要根据这个对应关系F就能找到给定值K的像F(K)。若表中存在关键字和K相等的记录,则必定在F(K)的存储位置上。其实换个说法,就是通过函数F(),算出要查找关键字K的存储位置F(K),这样就实现了不需要进行比较便可直接取得查找记录。在此,我们称这个对应关系F为哈希函数,按这个思路而建立的表为哈希表。值得一提的是,哈希函数不是唯一的,我们可以根据要
但这就需要很大的计算机储存容量。第二个前提的实现可能不存在问题,当今计算机的储存硬件已经日新月异,容量翻倍。就从个人计算机的硬盘来说,从2000年的20G容量的硬盘到2006 年的 200 G 硬盘 ,容量变化是 10 倍 ,但从计 算机的 CPU 来说 ,从 2000 年的 700 M Hz 的 CPU 到 2006 年 2. 2 GHz 的 CPU 来看 ,速度只提高了 3 倍 。那么我们是 不是应该多用点容量来换取我们的速度呢 ?