数据结构之哈希(poj3274)

寒假集训的时候学习了一下哈希,但是一直没有练习,这几天找了几道哈希的题目,发现忘的差不多了。

做了几道题之后发现哈希真的是一个很高效的数据结构,体验到了数据结构的强大。

构建哈希表示为了能够更高效率的查找,还记得小学的时候查字典吗?其实哈希就相当于那样一个东西,他把数据按照一定的哈希函数生成一个键值,然后把所有键值相同的存在一个相同的数组中,然后查找的时候首先找它的键值,找到键值之后只用在键值相同的这个数组中查找就行了。

原理就是这样,要想真正了解哈希表,还要几道题目练习,首先哈希表可以用二维结构体存储,因为你不知道每一个键值后面有多少个元素,所以用二维结构体存储的话后面一维的大小不好确定,而且有些题目对内存的要求比较严格,每个都开那么大的话会浪费很多的内存,所以一般都会用一个数组链表。但是链表又不好写。

那么vector就能解决这个问题,因为vector是一个动态的存储结构,下面来看一道题目。

数组sum[i][j]表示从第1到第i头cow属性j的出现次数。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值