哈希表(线性探测再散列)
来源:互联网 发布:vmware mac os补丁 编辑:程序博客网 时间:2024/05/16 19:17
#include<stdio.h>#include<stdlib.h>typedef struct elem{ int key; int flag; int count;}elem;typedef struct node{ elem *base; int length;}Table;void Creat(Table &s){int i,m,n,j;int a[100],b[100],c[100]; printf("输入表的长度:\n"); scanf("%d",&s.length); s.base=(elem*)malloc((s.length+1)*sizeof(elem)); printf("输入模值:\n"); scanf("%d",&m); for (i=0;i<s.length;i++) { s.base[i].flag=0; s.base[i].count=0; s.base[i].key=0; } printf("输入数值个数:\n"); scanf("%d",&n);for (i=0;i<n;i++){ scanf("%d",&a[i]); b[i]=a[i]%m;c[i]=1;if (s.base[b[i]].flag==0){ s.base[b[i]].flag=1; s.base[b[i]].count=1; s.base[b[i]].key=a[i];}else{j=b[i]; while (s.base[j].flag==1){j++;c[i]++;}s.base[j].key=a[i];s.base[j].flag=1;s.base[j].count=c[i];}//else}//forfor (i=0;i<n;i++) printf("数值为:%d %d\n",a[i],b[i]);printf("数据依次输出这个位置是否被放值、数据大小、数据移动次数:");for (i=0;i<s.length;i++)printf("表数据为:%d %d %d\n",s.base[i].flag,s.base[i].key,s.base[i].count);}int main(){Table s;Creat(s);return 0;}
0 0
- 哈希表(线性探测再散列)
- 哈希表线性探测再散列
- 实验 哈希表线性探测再散列
- 哈希表线性探测&二次探测
- HashTable哈希表/散列表(线性探测和二次探测)
- 一个简单的哈希表(线性探测再散列)
- 线性探测再散列解决冲突的哈希表
- 哈希表(开放寻址,线性探测)
- 哈希表的C++实现(线性探测)
- 哈希表(线性探测法处理冲突)
- 哈希表---线性探测法
- 哈希表-线性探测
- 线性探测法构建哈希表
- 【哈希表】线性探测再散列的相关知识与计算
- 哈希表,开放地址法之线性探测代码(JAVA)
- 数据结构:哈希表(除留取余法--线性探测法)
- 搜索结构之哈希表(线性探测法)
- 哈希表-开放地址法之线性探测代码(JAVA)
- [Web前端]梳理-HTML5.1.input类型
- [Canvas绘图] 第02节 今日看“点"
- 朝花夕拾——初探Java虚拟机及其加载过程
- JS改变文字透明度
- 如何将solr5.3.1部署到Tomcat下
- 哈希表(线性探测再散列)
- NSCondition
- 安卓之自定义view实现索引
- Android网络编程之使用HttpClient批量上传文件
- KVC和点语法的性能
- C++primer plus第六版课后编程练习答案8.7
- WEB前端CSS框架“垒砖”介绍
- 用AU3在招商银行网上银行页面自动输入卡号和密码
- 解决报错libc++abi.dylib: terminate_handler unexpectedly threw an exception