数据结构-Hash常见操作实践
目录介绍
- 01.什么是哈希算法
- 02.哈希算法的应用
- 03.安全加密的场景
- 04.唯一标识的场景
- 05.数据校验的场景
- 06.散列函数的场景
- 07.Git版本的控制
- 08.云存储文件场景
- 09.哈希算法的总结
- 10.哈希算法的特点
- 11.哈希算法的实践
- 12.常用哈希码算法
- 13.Map哈希的算法
- 14.理解HashCode
- 15.哈希冲突的解决
- 16.问题思考的答疑
01.什么是哈希算法
- 哈希算法历史悠久
- 业界著名的哈希算法也很多,比如MD5、SHA等。在平时的开发中,基本上都是拿现成的直接用。今天不会重点剖析哈希算法的原理,也不会教你如何设计一个哈希算法,而是从实战角度告诉你,在实际开发中,我们该如何用哈希算法解决问题。
- 什么是哈希算法,用一句话就可以概括了。
- 将任意长度的二进制值串映射为固定长度的二进制值串,这个映射规则就是哈希算法,而通过原始数据映射之后得到的二进制值串就是哈希值。
- 但是,要设计一个优秀的哈希算法并不容易,我了需要满足的几点要求:
- 从哈希值不能反向推导出原始数据(所以哈希算法也叫单向哈希算法);
- 对输入数据非常敏感,哪怕原始数据只修改了一个Bit,最后得到的哈希值也大不相同;
- 散列总被的概率要很小,