平方之雜湊表

2021-07-09 04:29:58 字數 736 閱讀 3611

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

#include

#include

using namespace std;

int main()

else

} if(!flag)

if(hash[(t+tmp)%k]==-1)

else if(hash[(t-tmp)%k]==-1)

} }

if(i==n-1)

cout

cout<<" "; }

} }

雜湊表平方探測法

平方探測採用原雜湊值加整數平方作為備選位置避免了一次聚集 會產生二次聚集,在備選位置上聚集 裝填因子不能大於0.5,即至少有一半為空且表大小為素數才能保證插入元素總能成功 public class quadraticprobinghashtable public quadraticprobingha...

雜湊查詢(雜湊表建立及平方探測)

編譯處理時,涉及變數及屬性的管理 插入 新變數的定義 查詢 變數的引用 順序查詢 o n 二分查詢 o logn 二叉樹查詢o h 平衡二叉樹 o logn 如何快速查詢?查詢的本質 已知物件找位置 有序的安排物件 全序 順序查詢 半序 二叉樹 直接算出位置 雜湊查詢 雜湊查詢 1.計算位置。2.解...

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

time limit 400ms memory limit 65536k 給定的一組無重複資料的正整數,根據給定的雜湊函式建立其對應hash表,雜湊函式是h key key p,p是雜湊表表長,p是素數,處理衝突的方法採用平方探測方法,增量di i 2,i 1,2,3,m 1 輸入一組測試資料,資料...