资源简介
System.out.println(" 1. RS-Hash Function Value: " + ghl.RSHash(key));
System.out.println(" 2. JS-Hash Function Value: " + ghl.JSHash(key));
System.out.println(" 3. PJW-Hash Function Value: " + ghl.PJWHash(key));
System.out.println(" 4. ELF-Hash Function Value: " + ghl.ELFHash(key));
System.out.println(" 5. BKDR-Hash Function Value: " + ghl.BKDRHash(key));
System.out.println(" 6. SDBM-Hash Function Value: " + ghl.SDBMHash(key));
System.out.println(" 7. DJB-Hash Function Value: " + ghl.DJBHash(key));
System.out.println(" 8. DEK-Hash Function Value: " + ghl.DEKHash(key));
System.out.println(" 9. BP-Hash Function Value: " + ghl.BPHash(key));
System.out.println(" 9. FNV-Hash Function Value: " + ghl.FNVHash(key));
System.out.println("10. AP-Hash Function Value: " + ghl.APHash(key));

代码片段和文件信息
/*
**************************************************************************
* *
* General Purpose Hash Function Algorithms Library *
* *
* Author: Arash Partow - 2002 *
* URL: http://www.partow.net *
* URL: http://www.partow.net/programming/hashfunctions/index.html *
* *
* Copyright notice: *
* Free use of the General Purpose Hash Function Algorithms Library is *
* permitted under the guidelines and in accordance with the most current *
* version of the Common Public License. *
* http://www.opensource.org/licenses/cpl.php *
* *
**************************************************************************
*/
class GeneralHashFunctionLibrary
{
public long RSHash(String str)
{
int b = 378551;
int a = 63689;
long hash = 0;
for(int i = 0; i < str.length(); i++)
{
hash = hash * a + str.charAt(i);
a = a * b;
}
return hash;
}
/* End Of RS Hash Function */
public long JSHash(String str)
{
long hash = 1315423911;
for(int i = 0; i < str.length(); i++)
{
hash ^= ((hash << 5) + str.charAt(i) + (hash >> 2));
}
return hash;
}
/* End Of JS Hash Function */
public long PJWHash(String str)
{
long BitsInUnsignedInt = (long)(4 * 8);
long ThreeQuarters = (long)((BitsInUnsignedInt * 3) / 4);
long OneEighth = (long)(BitsInUnsignedInt / 8);
long HighBits = (long)(0xFFFFFFFF) << (BitsInUnsignedInt - OneEighth);
long hash = 0;
long test = 0;
for(int i = 0; i < str.length(); i++)
{
hash = (hash << OneEighth) + str.charAt(i);
if((test = hash & HighBits) != 0)
{
hash = (( hash ^ (test >> ThreeQuarters)) & (~HighBits));
}
}
return hash;
}
/* End Of P. J. Weinberger Hash Function */
public long ELFHash(String str)
{
long hash = 0;
long x = 0;
for(int i = 0; i < str.length(); i++)
{
hash = (hash << 4) + str.charAt(i);
if((x = hash & 0xF0000000L) != 0)
{
hash ^= (x >> 24);
}
hash &= ~x;
}
return hash;
}
/* End Of ELF Hash Function */
public long BKDRHash(String str)
{
long seed = 131; // 31 131 1313 13131 131313 etc..
long hash = 0;
for(int i = 0; i < str.length(); i++)
{
hash = (hash * seed)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2000-01-01 00:00 GeneralHashFunctions_-_Java\
文件 4741 2000-01-01 00:00 GeneralHashFunctions_-_Java\GeneralHashFunctionLibrary.java
文件 2632 2000-01-01 00:00 GeneralHashFunctions_-_Java\GeneralHashTest.java
文件 695 2000-01-01 00:00 GeneralHashFunctions_-_Java\Makefile
相关资源
- java 毕业设计 进销存管理系统 源码
- java图片浏览器跨平台运行程序与源码
- 基于java的在线考试系统-毕业设计
- 微博系统(Java源码,servlet+jsp),适
- java串口通信全套完整代码-导入eclip
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
评论
共有 条评论