#include <stdio.h>
#define m 11 //定义为素数最好
int fun(int x); //哈希函数设置
void searchHash(int hash[m]); //哈希查找
void initialHash(int hash[m]); //哈希表初始化
void printHash(int hash[m]); //哈希表输出
void insertHash(int hash[m]); //插入
void deleteHash(int hash[m]); //删除
int main()
{
int hash[m];
initialHash(hash);
printHash(hash);
insertHash(hash);
printHash(hash);
deleteHash(hash);
printHash(hash);
searchHash(hash);
return 0;
}
int fun(int x) {
int key;
key=x%m; //关键值为对表长取余
return key;
}
void initialHash(int hash[m]) {
int n,i,x,key;
for (i=0; i<m; i++) { //初始全部赋0值
hash[i]=0;
}
printf("请输入初始化数据个数:");
scanf("%d",&n);
printf("依次录入%d个数据:",n);
for (i=0; i<n; i++) {
scanf("%d",&x);
key=fun(x);
数据结构与算法 7.4 五大查找之哈希查找 [线性探测法]
最新推荐文章于 2022-09-19 23:16:37 发布