读书人

哈希表那么重要可是不知道从哪里能系

发布时间: 2012-04-04 16:38:51 作者: rapoo

哈希表那么重要,可是不知道从哪里能系统的并且结合应用的学习到这方面知识。
可以提供一些方式全面的学习哈希表的知识与应用么,看高手们经常说哈希,自己却只有个简单的哈希表概念。

[解决办法]
http://www.javaeye.com/topic/344876
[解决办法]
.Net和Java都自带Dictionnary,Set,Map这样的 容器,就是封装好的Hash.
自己做Hash可以先从桶排序的原理看起,假设你们班级有30人,你想找到75分试卷的人
最快的办法是准备100个桶,把试卷按分数丢进去,这样可以在O(1)时间内找到,顺次拿出就是O(n)排序,是最快的,但牺牲了空间。

假设你没100个桶,或者你想节约桶的数量,或者分数本身就是小数,就要考虑编码方式了。
比如桶里再约定个试卷摆放方式。
[解决办法]
想学理论知识就看算法导论,那里面写的很详细,并且给了其他很多参考资料
[解决办法]
是啊,感觉哈希表挺有用的,可惜一直都没在实际工作中使用过。
[解决办法]
一些数据查找
容器都会用到hash表的
也叫散列
[解决办法]
哈希也称散列表
就是把一个结构映射到另一个,而减少枚举元素的过程
算法导论里有详解
我ACM的时候写过一段HASH的字符串模板,楼主有兴趣可以去看看
www.owent.net/part/Article/?id=45
[解决办法]
数据结构和算法这本书里面也有讲到,挺详细的

读书人网 >软件架构设计

热点推荐