linux下C实现的哈希表

时间:2015-08-31 05:26:07
【文件属性】:
文件名称:linux下C实现的哈希表
文件大小:3KB
文件格式:C
更新时间:2015-08-31 05:26:07
hash 用C实现的哈希表 int hash_insert(Hash* * hp,int data)//返回0表示成功 { if((*hp) == NULL)return 1; if(((*hp)->num)==14) { printf("hash full\n"); return 1;//哈希表满了 } if((*hp)->pNode[KEY(data)].data==8888)//可以直接插入 { ((*hp)->pNode[KEY(data)]).data=data; } else //不可以直接插入,需要再散列 { int num=KEY(data); printf("num=%d\n",data); int i=1; do { num=(num+i*i); i++; }while(((*hp)->pNode[num]).data!=8888); ((*hp)->pNode[num]).data=data; } ((*hp)->num)++; return 0; }

网友评论

  • 好东西 不过当index大点的时候要报错哦