time limit: 400ms
memory limit: 65536kb
problem description
給定的一組無重複資料的正整數,根據給定的雜湊函式建立其對應hash表,雜湊函式是h(key)=key%p,p是雜湊表表長,p是素數,處理衝突的方法採用平方探測方法,增量di=±i^2,i=1,2,3,...,m-1
input
輸入包含多組測試資料,到 eof 結束。
每組資料的第1行給出兩個正整數n(n <= 500)和p(p >= 2n的最小素數),n是要插入到雜湊表的元素個數,p是雜湊表表長;第2行給出n個無重複元素的正整數,資料之間用空格間隔。
output
按輸入資料的順序輸出各數在雜湊表中的儲存位置 (hash表下標從0開始),資料之間以空格間隔,以平方探測方法處理衝突。
example input
4 1110 6 4 15
9 11
47 7 29 11 9 84 54 20 30
example output
10 6 4 53 7 8 0 9 6 10 2 1
hint
author
xam
**:/**平方探測法的雜湊處理**/
#include#include#includeusing namespace std;
int main()
while(~scanf("%d %d",&n,&p)){
int ans;
memset(h,-1,sizeof(h));
for(i=0;i
革命尚未成功!
hash解決衝突之 平方探測
資料結構實驗之查詢五 平方之雜湊表 time limit 400ms memory limit 65536k 有疑問?點這裡 題目描述 給定的一組無重複資料的正整數,根據給定的雜湊函式建立其對應hash表,雜湊函式是h key key p,p是雜湊表表長,p是素數,處理衝突的方法採用平方探測方法,增...
hash解決衝突之 平方探測
資料結構實驗之查詢五 平方之雜湊表 time limit 400ms memory limit 65536k 有疑問?點這裡 題目描述 給定的一組無重複資料的正整數,根據給定的雜湊函式建立其對應hash表,雜湊函式是h key key p,p是雜湊表表長,p是素數,處理衝突的方法採用平方探測方法,增...
雜湊表平方探測法
平方探測採用原雜湊值加整數平方作為備選位置避免了一次聚集 會產生二次聚集,在備選位置上聚集 裝填因子不能大於0.5,即至少有一半為空且表大小為素數才能保證插入元素總能成功 public class quadraticprobinghashtable public quadraticprobingha...