一、哈希算法是什么?
哈希算法(Hash)又称摘要算法(Digest),它的作用是:对任意一组数据进行计算,得到一个固定长度的输出。
二、关于哈希算法我的理解
a=([1,2,7,8])
这是一个数组.
我需要查找某个元素时通常会使用循环和条件判断语句:
for i in a:
if i == 7;
print(i)
但是这样就需要O(n)的时间
如果我想要O(1)的时间完成该怎么办呢
那我是不是只要把值的位置提前记下来就可以了
b={'one':1,'two':2,'seven':7,'eight':8}
那么我需要找到某个元素时直接获取他的地址就行了
print(b[seven])
这就和哈希表类似
每次给值,哈希算法每次都会算出一个哈希值(7=seven),每个值得出的哈希值都是独一无二的,且相同的哈希算法得到的哈希值的长度是相同的。
得出哈希值之后会把值的地址存在哈希表中,之后需要查找时就可以直接将需要查找的值通过哈希算法获得指定的哈希值并直接得到地址,从而不需要遍历进行挨个对比