原理是把字符串转换成P进制数,P取131或者13331较好,用unsigned long long存储结果,除非有人专门卡,否则大概率不会出现哈希冲突。 预处理出前i个字符的P进制值h[i],以及p的i次方,p[0] = 1. 如何求任意区间[l,r]的hash值?h[r] - h[l-1]*p[r-l+1]
841. 字符串哈希 (字符串哈希模板)
关注
打赏
原理是把字符串转换成P进制数,P取131或者13331较好,用unsigned long long存储结果,除非有人专门卡,否则大概率不会出现哈希冲突。 预处理出前i个字符的P进制值h[i],以及p的i次方,p[0] = 1. 如何求任意区间[l,r]的hash值?h[r] - h[l-1]*p[r-l+1]
微信扫码登录