1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
// const HASH_SIZE: usize = 20000063;
// const PRIME: usize = 29;
// const fn alphabet_index(alphabet: &u8) -> usize {
// (*alphabet - b'a') as usize
// }
// fn polynomial_rolling_hash(key: &str) -> usize {
// key.as_bytes()
// .into_iter()
// .rfold(0, |hash, byte|
// (hash * PRIME + alphabet_index(byte)) % HASH_SIZE
// )
// }
// fn fnv_1_hash_32bit(key: &str) -> u32 {
// key.as_bytes()
// .into_iter()
// .fold(2166136261, |hash, byte|
// (hash * 16777619) ^ (*byte as u32)
// )
// }
// const BIG_PRIME: usize = 1212121;
// pub(super) const TABLE_SIZE: usize = 2357;
//
// pub(super) fn linear_congruential_hash(key: &str) -> usize {
// key.as_bytes()
// .into_iter()
// .fold(0, |hash, byte|
// (hash * BIG_PRIME + *byte as usize) % TABLE_SIZE
// )
// }
//