NEPLg2 Standard Library - hash32 - hash32
Web Playground
Web Playground

hash32

32-bit 非暗号ひあんごうハッシュの bare overload

目的もくてき

  • bare overload hash32 で primitive / str の 32-bit 非暗号ひあんごうハッシュをられるようにします。
  • HashMap / HashSetる hash function value の default 候補こうほとして再利用さいりようできるようにします。

実装じっそう

  • primitive key と UTF-8 byte れつたいして avalanche 混合こんごうおこないます。

注意ちゅうい

  • 暗号用途あんごうようとには使つかえません。

計算量けいさんりょう

  • i32 / bool / u8 / i64 は O(1)、str文字列長もじれつちょうを n として O(n) です。

mix

32-bit あたいを avalanche 混合こんごうする

目的もくてき

  • hash の下位かい bit までかたよりをちらし、bucket 選択せんたくでの偏在へんざいらします。

hash32

bool を 32-bit ハッシュへ変換へんかんする

hash32

i32 を 32-bit ハッシュへ変換へんかんする

hash32

u8 を 32-bit ハッシュへ変換へんかんする

hash32

i64 を 32-bit ハッシュへ変換へんかんする

hash32

str を 32-bit ハッシュへ変換へんかんする