数据结构实验:哈希表
来源:互联网 发布:淘宝宝贝倒计时生成器 编辑:程序博客网 时间:2024/06/15 02:15
数据结构实验:哈希表
Time Limit: 1000MS Memory limit: 65536K
题目描述
在n个数中,找出出现次数最多那个数字,并且输出出现的次数。如果有多个结果,输出数字最小的那一个。
输入
单组数据,第一行数字n(1<=n<=100000)。
接下来有n个数字,每个数字不超过100000000
接下来有n个数字,每个数字不超过100000000
输出
出现次数最多的数字和次数。
示例输入
31 1 2
示例输出
1 2
提示
哈希思想,以数组下标存储数据,数组内元素存储数据出现的次数
数据比较大,所以要求余,而又因为求余后可能会有相同的数,所以用链地址分别存储。
struct hi{ int num; int date; struct hi *next;};#include <stdio.h>#include <string.h>int main(){ int n,i,j,k,ma,x; struct hi a[100000]; scanf("%d",&n); memset(a,0,sizeof(a)); for(i = 0; i<n; i++) { k = 0; scanf("%d",&x); j = x % 100000; hi *p = &a[j],*t; t = p; while(p != NULL) { if(p ->date == x) { k = 1; p ->num++; break; } p = p->next; if(t ->next != NULL) { t = t ->next; } } if(k == 0) { p = t; p ->next = new hi; p = p ->next; p ->date = x; p ->next = NULL; p ->num = 1; } } k = 0; hi *p; ma = 0; for(i = 0;i<100000;i++) { p = &a[i]; while(p != NULL) { if(p ->num > ma) { ma = p ->num; k = p ->date; } else if(p ->num == ma) { if(p ->date < k) k = p ->date; } p = p ->next; } }printf("%d %d\n",k,ma); return 0;}
0 0
- 数据结构实验-查找-哈希表
- 数据结构实验:哈希表
- 数据结构实验:哈希表
- 数据结构实验:哈希表
- 数据结构实验:哈希表
- 数据结构实验:哈希表
- 数据结构实验:哈希表
- 数据结构实验:哈希表
- 数据结构实验:哈希表
- 数据结构实验:哈希表
- 数据结构实验:哈希表
- 数据结构实验:哈希表 SDUT
- 数据结构实验:哈希表
- 数据结构实验:哈希表
- 数据结构实验:哈希表
- 数据结构实验:哈希表
- 数据结构实验:哈希表
- sdut 数据结构实验:哈希表
- 数据结构实验:哈希表
- s3c2440对nandflash的操作
- poj 2787
- java版泰囧表情的生成器代码,不用PS也能恶搞。
- HDU1251 trie(结构体)
- 数据结构实验:哈希表
- jsp页面中的EL表达式不被解析的问题
- tftp连接时出线retry count exceeded starting again时检查步骤
- 在Code上创建了新的项目TEngine
- Cocoapods Error "Pull is not possible because you have unmerged files." #1268
- android重启代码
- UML-构件图和部署图
- WM_VSCROLL和WM_HSCROLL 消息的使用
- Mongodb集群部署---Replica Set+Sharding