2.哈希函数
哈希函数
目标:
- 极快且稳定
特点:
- 确定性/
幂等性
:- 对于相同的输入,哈希算法应始终产生相同的输出。这样才能确保哈希表是可靠的。
效率高
:- 计算哈希值的过程应该足够快,哈希表的实用性越高。
均匀分布
:- 哈希算法应使得键值对均匀分布在哈希表中。分布越均匀,哈希冲突的概率就越低。
常见的哈希算法:
- MD5
- SHA-1、SHA-2、SHA-3
- CRC16、CRC32
注意点:
- 只有
不可变对象
才能保证结果的幂等,才能被哈希,作为哈希表的 key
幂等性
:
效率高
:
均匀分布
:
不可变对象
才能保证结果的幂等,才能被哈希,作为哈希表的
key