资源简介
设定哈希函数 H key key MOD 11 表长 11 输入一组关键字序列 根据线性探测再散列解决冲突的方法建立哈希表的存储结构 显示哈希表 任意输入关键字 判断是否在哈希表中
代码片段和文件信息
// Hash.cpp : Defines the entry point for the console application.
//
#include “stdafx.h“
#include “stdio.h“
#include “stdlib.h“
#define SIZE 11
#define NULL_key -1
typedef int ElemType;
typedef struct {
ElemType *elem;
int count;
int size;
}HashTable;
int Hash(ElemType k) {////哈希函数
return k%SIZE;
}
int Hash_loa(HashTable &H ElemType k) {//判断关键字在哈希表中的位置
int key;
key = Hash(k);
while(H.elem[key] != NULL_key)
key = (key+1)%SIZE;
return key;
}
void showHash(HashTable &H);
void CreateHash(HashTable &H) {//构建哈希表
if(!(H.elem = (ElemType*)malloc(SIZE*sizeof(ElemType))))
exit(1);
else {
H.size = SIZE;
H.count = 0;
int key;
ElemType data;
for(int i=0; i H.elem[i] = NULL_key;
printf(“请依次输入每个记录的关键字,每输入依次按一次
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-06-03 09:12 Hash哈希表\
目录 0 2013-05-25 23:02 Hash哈希表\Debug\
文件 184383 2013-05-25 11:06 Hash哈希表\Debug\Hash.exe
文件 204448 2013-05-25 11:06 Hash哈希表\Debug\Hash.ilk
文件 6996 2013-05-25 11:06 Hash哈希表\Debug\Hash.obj
文件 203608 2013-05-25 10:37 Hash哈希表\Debug\Hash.pch
文件 443392 2013-05-25 11:06 Hash哈希表\Debug\Hash.pdb
文件 1800 2013-05-25 10:37 Hash哈希表\Debug\StdAfx.obj
文件 41984 2013-06-03 08:43 Hash哈希表\Debug\vc60.idb
文件 53248 2013-05-25 11:06 Hash哈希表\Debug\vc60.pdb
文件 1682 2013-05-25 11:06 Hash哈希表\Hash.cpp
文件 4512 2013-05-24 08:56 Hash哈希表\Hash.dsp
文件 533 2013-05-24 08:56 Hash哈希表\Hash.dsw
文件 58368 2013-06-03 09:12 Hash哈希表\Hash.ncb
文件 48640 2013-06-03 09:12 Hash哈希表\Hash.opt
文件 242 2013-06-03 08:42 Hash哈希表\Hash.plg
文件 1196 2013-05-24 08:56 Hash哈希表\ReadMe.txt
文件 291 2013-05-24 08:56 Hash哈希表\StdAfx.cpp
文件 769 2013-05-24 08:56 Hash哈希表\StdAfx.h
评论
共有 条评论