⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hashpjw.c

📁 掌握如何用C来实现各种算法
💻 C
字号:
/*****************************************************************************
*                                                                            *
*  ------------------------------- hashpjw.c ------------------------------  *
*                                                                            *
*****************************************************************************/

#include "hashpjw.h"

/*****************************************************************************
*                                                                            *
*  -------------------------------- hashpjw -------------------------------  *
*                                                                            *
*****************************************************************************/

int hashpjw(const void *key) {

const char         *ptr;

int                val;

/*****************************************************************************
*                                                                            *
*  Hash the key by performing a number of bit operations on it.              *
*                                                                            *
*****************************************************************************/

val = 0;
ptr = key;

while (*ptr != '\0') {

   int tmp;

   val = (val << 4) + (*ptr);

   if (tmp = (val & 0xf0000000)) {

      val = val ^ (tmp >> 24);
      val = val ^ tmp;

   }

   ptr++;

}

/*****************************************************************************
*                                                                            *
*  In practice, replace PRIME_TBLSIZ with the actual table size.             *
*                                                                            *
*****************************************************************************/

return val % PRIME_TBLSIZ;

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -