SWUST OJ哈希表(c++)
散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。
采用除留余数法(H(key)=key %n)
#include<bits/stdc++.h>
using namespace std;
int main()
{
int m,n,a[100],i,x;
cin>>m>>n;
for(i=0;i<n;i++)
cin>>a[i];
cin>>x;
int l=x%m;i=0;int y,t=1;
while(a[i]!=x&&i<=n)
{
y=a[i]%m;
i++;
if(y==l) t++;
}
if(i==n+1)
cout<<"-1";
else
cout<<l<<","<<t;
return 0;
}