問題及**:
/*2015,煙台大學計算機與控制工程學院
*完成日期:2023年12月6日
*問題描述:認真閱讀並驗證雜湊表實施查詢的相關演算法,寫程式建立序列的雜湊表,裝填因子定為0.8,雜湊函式為h(k)=key%p,p=11,採用線性探查法解決衝突。測試中:
(1)輸出建立的雜湊表;
(2)完成關鍵字為29的元素的查詢;
(3)在上述雜湊表中刪除關鍵字為77的元素,再顯示雜湊表。
*/
**:
#include #define maxsize 100 //定義最大雜湊表長度
#define nullkey -1 //定義空關鍵字值
#define delkey -2 //定義被刪關鍵字值
typedef int keytype; //關鍵字型別
typedef char * infotype; //其他資料型別
typedef struct
hashdata;
typedef hashdata hashtable[maxsize]; //雜湊表型別
void insertht(hashtable ha,int &n,keytype k,int p) //將關鍵字k插入到雜湊表中
else //發生衝突時採用線性探查法解決衝突
while (ha[adr].key!=nullkey && ha[adr].key!=delkey);
ha[adr].key=k;
ha[adr].count=i;
}n++;
}void createht(hashtable ha,keytype x,int n,int m,int p) //建立雜湊表
{ int i,n1=0;
for (i=0; i
執行結果:
知識點總結:
了解雜湊表的構造,知道它的原理,明白它是如何執行的。
學習心得:
不明白的地方還是要靠畫**決。
第十五周專案一 驗證演算法
include define maxsize 100 定義最大雜湊表長度 define nullkey 1 定義空關鍵字值 define delkey 2 定義被刪關鍵字值 typedef int keytype 關鍵字型別 typedef char infotype 其他資料型別 typedef ...
第十五周 專案一 驗證演算法
問題及描述 煙台大學計算機與控制工程學院 完成日期 2016年12月2號 的雜湊表,裝填因子定為0.8,雜湊函式為h k key p,p 11,採用線性探查法解決衝突。測試中 1 輸出建立的雜湊表 2 完成關鍵字為29的元素的查詢 3 在上述雜湊表中刪除關鍵字為77的元素,再顯示雜湊表。includ...
第十五周專案一驗證演算法
檔名稱 專案1.cpp 作 者 王曉慧 完成日期 2016年12月8日 版 本 號 v1.0 問題描述 認真閱讀並驗證雜湊表實施查詢的相關演算法,寫程式建立序列的雜湊表,裝填因子定為0.8,雜湊函式為h k key p,p 11,採用線性探查法解決衝突。測試中 1 輸出建立的雜湊表 2 完成關鍵字為...