数据结构|数据结构——哈希查找的实现(C语言)

哈希查找算法的思想:通过对元素的关键字值进行某种运算,直接求出元素的地址,即使用关键字到地址的直接转换方法,而不需要反复比较。
直接转换方法有很多,这里介绍最常用的一种方法:除留取余法,即H(key)=key%p; p一般为小于表长的最大质数。例如,表长为100,p取97.

//实现哈希查找算法 #include #include #define m 20 //散列表的长度 #define n 12 //元素个数 #define t 19 //t为不大于散列表长度的最大质数 typedef struct { int key; //关键字,此处可理解为元素的大小 int compare; //比较次数 } HashTable; HashTable a[20]={0}; int b[12]={12,2,1,34,45,56,32,7,5,44,13,6}; //创建散列表 void CreatHash() { for(int i=0; i

运行结果为:
数据结构|数据结构——哈希查找的实现(C语言)
文章图片

【数据结构|数据结构——哈希查找的实现(C语言)】

    推荐阅读