哈希表(线性探测法处理冲突)

来源:互联网 发布:淘宝代付可以用花呗吗 编辑:程序博客网 时间:2024/06/04 19:34
#include<stdio.h>#define M 30struct hashnode{int data;int isnull;};hashnode hashtable[M];void inithash(){int i;for (i = 0; i < M; i++){hashtable[i].isnull = 1;}}int gethashaddress(int key){return key % 29;}int insert(int key){int address = gethashaddress(key);if (hashtable[address].isnull == 1){hashtable[address].data = key;hashtable[address].isnull = 0;}else{while (hashtable[address].isnull == 0 && address < M){address++;}if (address == M){return -1;}hashtable[address].data = key;hashtable[address].isnull = 0;}return 0;}int find(int key)      {int address = gethashaddress(key);while (!(hashtable[address].isnull == 0 && hashtable[address].data == key && address<M)){address++;}if (address == M)address = -1;return address;}

阅读全文
0 0
原创粉丝点击