#include <leetcode.h>
|
static string | subStrHash (string s, int power, int modulo, int k, int hashValue) |
|
◆ subStrHash()
string leetcode::find_substring_with_given_hash_value::Solution::subStrHash |
( |
string |
s, |
|
|
int |
power, |
|
|
int |
modulo, |
|
|
int |
k, |
|
|
int |
hashValue |
|
) |
| |
|
static |
在文件 leetcode.cpp 第 1980 行定义.
1982 auto *
const pn =
new int[k];
1984 for(
int i = 1; i < k; i++) {
1985 pn[i] =
static_cast<unsigned long long>(pn[i - 1]) *
static_cast<unsigned long long>(power) % modulo;
1988 for(
int i = 0; i < s.length(); i++) {
1989 unsigned long long hash = 0;
1990 for(
int j = 0; j < k; j++) {
1991 hash +=
static_cast<unsigned long long>((s[i + j] -
'a' + 1) % modulo) * pn[j];
1994 if(hash == hashValue) {
1995 return s.substr(i, k);
被这些函数引用 leetcode::find_substring_with_given_hash_value::TEST().
该类的文档由以下文件生成: