此外,好的散列算法使得构造两个独立的有相同散列的输入不能通过计算方法实现。典型的散列算法包括 MD2、MD4、MD5 和 SHA-1。散列算法也被称为散列函数。散列算法的算法就是争取一个萝卜一个坑的原则
比如说有5个数 12,25,30,45,50,这几个数有个规律,就是十位数都不相同,
如果我设置一个散列函数f(value)=value/10;平常的时候,我们查找50,要比较
5次(其他算法可能不同),这里用散列算法只需要1次,就是解散列函数,key=50/10
=5,要找的数就在第5个位子.但是上面问题还是很多的,比如说查找55呢?就会出
错<因为55解散列函数之后,也是在第5个位子>,还有等等等问题,很显然这个是我
散列函数没设置好,当你把散列函数设置好了后,由于数据的庞大,冲突很有可能
产生,那么就需要我们来处理冲突了,所以写散列算法就是设置好的散列函数和
处理冲突的过程.这里散列算法涉及的查找就跟查找的数量无关,跟冲突率有直接
的关系