11.29学习总结

(1)今日安排

整型关键字的散列映射

题目要求:给定一系列整型关键字和素数P,用除留余数法定义的散列函数H(Key)=Key将关键字映射到长度为P的散列表中。用线性探测法解决冲突。

#include<stdio.h>
int hash[1050],n;
int find(int x){
    int k=x%n;
    while(hash[k]!=0&&hash[k]!=x){
        k++;
        if(k==n){
            k=0;
        }
    }
    return k;
}
int main(){
    int m;
    scanf("%d%d",&m,&n);
    for(int i=0;i<m;i++){
        int x;
        scanf("%d",&x);
        int p=find(x);
        hash[p]=x;
        if(i) putchar(32);
        printf("%d",p);
    }
    return 0;
}

 

posted @ 2021-11-29 23:28  今天又双叒叕在敲代码  阅读(21)  评论(0编辑  收藏  举报