您的位置:首页 > 其它

poj 1200 hash

2010-09-04 21:36 253 查看
题意 给n 和nc, n是要找字串的长度。 nc 是总串里出现过的不同字符的个数。

求能在总串里找到长度为n的不同字串的个数。

开始想的是用 ELFhash 然后 数组链式法,结果 mle. 然后把链式改成 +1 式hash 然后 tle , 想阿想阿,最后还是没想出来。最后还是看了看discuss 上面说要 nc 进制 hash 想还是不会,稍微看了一下别人的程序才会的。

收获: 首先 hash的认识加深了,并不是只有这么样的hash,然后是 进制hash的 认识,这种hash不会出现冲突。 这个要证明一下。

进制hash确实没有冲突,但是进制hash 在计算的时候会花掉大量的时间。这是elfhash 比他好的地方。

然而 elfhash 由于冲突可能在查找的时候浪费大量的时间,况且这道题又是那么长的字串。 在这会浪费很多时间

这道题真正考的应该是掌握读题 充分理解提的意思。 根据题的 要求确定算法 。这是这道题比较好的地方
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: