OJ3377資料結構實驗之查詢五 平方之雜湊表

2021-07-17 03:12:15 字數 797 閱讀 7071

time limit: 400ms memory limit: 65536k

給定的一組無重複資料的正整數,根據給定的雜湊函式建立其對應hash表,雜湊函式是h(key)=key%p,p是雜湊表表長,p是素數,處理衝突的方法採用平方探測方法,增量di=±i^2,i=1,2,3,...,m-1

輸入一組測試資料,資料的第1行給出兩個正整數n(n <= 500)和p(p >= 2n的最小素數),n是要插入到雜湊表的元素個數,p是雜湊表表長;第2行給出n個無重複元素的正整數,資料之間用空格間隔。

按輸入資料的順序輸出各數在雜湊表中的儲存位置 (hash表下標從0開始),資料之間以空格間隔,以平方探測方法處理衝突。

4 11

10 6 4 15

9 11

47 7 29 11 9 84 54 20 30

10 6 4 5

3 7 8 0 9 6 10 2 1

xam

#include#include#include#include#include#includeusing namespace std;

int hash[10005],q[10005],p,cnt;

//q存每個資料對應的雜湊表中的位置

int main()

else

x=(y-j*j)%p;//向前探測

if(hash[x]==-1)}}

}for(i=0; iprintf("%d ",q[i]);

printf("%d\n",q[i]);

}}

資料結構上機實驗之順序查詢

time limit 1000ms memory limit 65536k 在乙個的序列裡,查詢元素是否存在,若存在輸出yes,不存在輸出no.本題多組資料,首先輸入乙個數字n,然後輸入n n 1000 個數,然後再輸入乙個查詢數字。若存在輸出yes,不存在輸出no.4 1 3 5 8 3 yes ...

資料結構上機實驗之順序查詢

time limit 1000ms memory limit 65536k 在乙個的序列裡,查詢元素是否存在,若存在輸出yes,不存在輸出no.本題多組資料,首先輸入乙個數字n,然後輸入n n 1000 個數,然後再輸入乙個查詢數字。若存在輸出yes,不存在輸出no.4 1 3 5 8 3 yes ...

資料結構上機實驗之順序查詢

think stl中的set直接水過去 problem description 在乙個的序列裡,查詢元素是否存在,若存在輸出yes,不存在輸出no.input 本題多組資料,首先輸入乙個數字n,然後輸入n n 1000 個數,然後再輸入乙個查詢數字。output 若存在輸出yes,不存在輸出no.e...