开放性地址处理法与冲突法处理哈希表的查找和插入
来源:互联网 发布:cf玫瑰精灵数据 编辑:程序博客网 时间:2024/04/30 17:05
/*用开放性地址处理冲突法定义的哈希表*/#define M 997typedef struct{ KeyType key;DataType data;}NodeType;typedef NodeType HashTable[M];-----------------------------------------------------------------/*用除余法设计哈希函数*/ int h(KeyType K, int m){ return K%m;}---------------------------------------------------------------------- /*线性表查探法查找关键字*/int HashSearch1(HashTa)ble HT, int K, int m){ int d,temp;d = h(K,m);temp = d;while(HT[d].key != -32768){ if(HT[d].key == K) return d; else d = (d+1)%m; if(d == temp) return -1;}return d;}------------------------------------------------------------------- /*在哈希表上插入一个节点*/int HashInsert1(HashTable HT, NodeType s, int m){ int d;d = HashSearch1(s.key, m);if(d = -1) return -1; //哈希表已满;else{ if(s.key == HT[d].key) return 0;else{ HT[d] = s;return 1;}}}--------------------------------------------------------------------
/*用拉链法定义哈希表*/#define M 997typedef struct node{KeyType key;DataType data;struct node *next;}HTNode;typedef HTNode *HT[M];----------------------------------------------------------------------/*查找关键字k*/HTNode* HashSearch2(HT T, KeyType K, int m){ HTNode *p = T[h(K,m)]; while(p != NULL && p->key != K) p = p->next; return p;}/*插入结点s*/int HashInsert2(HT T, HTNode *s, int m){ int d;HTNode *p = HashSearch2(T,s->key, m);if(p == NULL) return 0;else{d = h(s->key, m); s->next = T[d]; T[d] = s; return 1;}}
- 开放性地址处理法与冲突法处理哈希表的查找和插入
- 散列表(二):冲突处理的方法之链地址法的实现(哈希查找)
- 散列表(二):冲突处理的方法之链地址法的实现(哈希查找)
- 哈希表处理地址冲突的方法及成功查找的平均长度
- 采用链地址法处理冲突构造哈希表
- 采用链地址法处理冲突构造哈希表
- 采用链地址法处理冲突构造哈希表
- 采用链地址法处理冲突构造哈希表
- 哈希表(链地址法处理冲突)(1012)
- 哈希的构造,处理冲突和查找
- 哈希表的综合应用(创建、处理冲突、查找成功和失败的次数)
- 链地址处理哈希冲突的哈希表
- 哈希表的处理冲突
- 哈希表创建和处理冲突的方法
- HASH表(采用开放地址法处理hash冲突)
- (6)散列冲突处理:链地址法
- 散列函数之冲突处理之开地址法
- (6)散列冲突处理:链地址法
- [Activeden] Multimask Portfolio Reloaded Activeden flash网站模版
- 影子卫士 Shadow Defender 2011
- 彻底解决2440触摸屏跳点以及抖动问题
- No checks registered for this product
- APP启动画面实现方式
- 开放性地址处理法与冲突法处理哈希表的查找和插入
- MY FIRST C++ PROGRAM
- static作用
- 同事的博客
- VS2008中编译C工程出现无法打开包括文件:“iostream.h”: No such file or directory
- AIX系统连接TT报错
- java常见的经典面试题目--on going updated
- 恭喜自己的小窝成立
- 在线视频教程