Package org.aoju.bus.core.toolkit
Class HashKit
java.lang.Object
org.aoju.bus.core.toolkit.HashKit
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic intadditiveHash(String key, int prime) 加法hashstatic intAP算法static intBernstein's hashstatic intBKDR算法static intDEK算法static intDJB算法static intELF算法static intfnvHash(byte[] data) 改进的32位FNV算法1static int改进的32位FNV算法1static longHF Hash算法static longHFIP Hash算法static intintHash(int key) Thomas Wang的算法,整数hashstatic intjavaDefaultHash(String text) JAVA自己带的算法static intJS算法static long混合hash算法,输出64位的值static intoneByOneHash(String key) 一次一个hashstatic intPJW算法static introtatingHash(String key, int prime) 旋转hashstatic intRS算法hashstatic intSDBM算法static longTianL Hash算法static intuniversal(char[] key, int mask, int[] tab) Universal Hashingstatic intzobrist(char[] key, int mask, int[][] tab) Zobrist Hashing
-
Constructor Details
-
HashKit
public HashKit()
-
-
Method Details
-
additiveHash
加法hash- Parameters:
key- 字符串prime- 一个质数- Returns:
- hash结果
-
rotatingHash
旋转hash- Parameters:
key- 输入字符串prime- 质数- Returns:
- hash值
-
oneByOneHash
-
bernstein
-
universal
public static int universal(char[] key, int mask, int[] tab) Universal Hashing- Parameters:
key- 字节数组mask- 掩码tab- tab- Returns:
- hash值
-
zobrist
public static int zobrist(char[] key, int mask, int[][] tab) Zobrist Hashing- Parameters:
key- 字节数组mask- 掩码tab- tab- Returns:
- hash值
-
fnvHash
public static int fnvHash(byte[] data) 改进的32位FNV算法1- Parameters:
data- 数组- Returns:
- hash结果
-
fnvHash
-
intHash
public static int intHash(int key) Thomas Wang的算法,整数hash- Parameters:
key- 整数- Returns:
- hash值
-
rsHash
-
jsHash
-
pjwHash
-
elfHash
-
bkdrHash
-
sdbmHash
-
djbHash
-
dekHash
-
apHash
-
tianlHash
-
javaDefaultHash
-
mixHash
-
hfHash
-
hfIpHash
-