hash总结(个人)
来源:互联网 发布:淘宝怎么看自己的淘龄 编辑:程序博客网 时间:2024/04/30 11:38
本文只是随便说说hash的概念(换句话说,没有技术含量的= =)
放假回家前随便刷了几道hash题(虽说很多都是看题解过的),回家第一天,先来随便总结一下。
一:
1.hash其实就是弄一个函数(乱搞),然后对所给的数据进行hash得到一个key,这个key就是我们查找这个数据的关键。
2.例如对于坐标(x,y),我们可以用它的x^2+y^2作为key。对于一个字符串的,我们可以用h[i] = h[i+1]*x+str[i],其中x为自己设定(刘汝佳上面的)。还有数值加起来作为一个key也是可以的。反正就是很多,自己瞎弄都可以。
3.有的hash函数设计得好,所得的key基本不会碰撞。除非你能保证你的key不发生碰撞,否则一般是要开个vector来保存一下key相同的。由于vector也不能开太多个,因此为保证合理的key范围,对key要进行取模MOD,我一般都是设为99997,大概就10^5。(当然根据情况而定)
4.每次查找的时候,直接根据hash的值查找,对vector里面都查找一遍。这样的查找复杂度将会变得很低。
二:
做题过程中的一些心得:
1.如果时间卡得较紧,就不要用乘法之类进行hash;
2.待……
0 0
- hash总结(个人)
- hash个人总结c++
- 算法之个人总结:Hash表之简单应用
- 算法之个人总结:Hash表之简单应用
- 摘要(Hash)算法总结
- 个人总结(xml)
- 个人总结(1)
- hash总结
- hash总结
- Hash总结
- 数据结构HASH总结五:Nginx中的HASH(version 0.1)
- Eclipse 个人实用技巧 (个人记录总结)
- (perl)hash函数常用方法总结
- 排序算法(个人总结)
- 二分图(个人总结)
- kafka个人总结(1)
- Android 笔记(个人总结)
- HTTP个人总结(一)
- 有关Android线程的学习
- android app图标总是显示默认的机器人图标,且在manifest文件的application中修改无效
- Android开源框架ImageLoader的完美例子
- android知识点duplicateParentState
- 适配器模式
- hash总结(个人)
- 1011_A+B和C (15)
- ffplay播放rtsp视频流花屏问题
- Android中的Interpolator插入器
- Hibernate学习笔记之初体验
- ubuntu/windows双系统默认启动系统设置
- 将指定SQL的执行计划从共享池删除
- Android实现图标焦点突出效果
- Android FrameLayout的android:foreground属性可以设置单击时的前景色