数据结构实验:哈希表

发布时间:2017-1-22 18:05:09 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"数据结构实验:哈希表",主要涉及到数据结构实验:哈希表方面的内容,对于数据结构实验:哈希表感兴趣的同学可以参考一下。

题目描述  在n个数中,找出出现次数最多那个数字,并且输出出现的次数。如果有多个结果,输出数字最小的那一个。 输入  单组数据,第一行数字n(1<=n<=100000)。 接下来有n个数字,每个数字不超过100000000 输出  出现次数最多的数字和次数。 示例输入 3 1 1 2 示例输出 1 2 提示   来源  cz 示例程序 #include <stdio.h> #include <stdlib.h> const int N=100000; int a[100000]; struct node { int date; node *next; }*h[N]; void suspend(int x) { int tp=x%N; node *p=new node; p->date=x; p->next=h[tp]; h[tp]=p; } int find1(int x) { int tp = x%N; int cnt = 0; for (node *p = h[tp]; p; p = p->next) { if (p->date == x) cnt++; } return cnt; } int main() { int n, i, x, y, z=0; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); suspend(a[i]); } for(i=0;i<n;i++) { if(z<find1(a[i])) { z=find1(a[i]); y=i; } } printf("%d %d\n",a[y],z); return 0; }

上一篇:[置顶] 博客搬家
下一篇:Mac下OpenCV开发

相关文章

相关评论