第十五周 專案1 驗證演算法

2021-07-25 03:28:00 字數 1374 閱讀 4263

問題描述及**:

/*問題及**  

*all right reserved.  

*檔名稱:驗證演算法.cpp  

*版本號;v1.0  

*問題描述:  

1、認真閱讀並驗證雜湊表實施查詢的相關演算法,寫程式建立序列的雜湊表,裝填因子定為0.8,雜湊函式為h(k)=key%p,p=11,採用線性探查法解決衝突。測試中:   

(1)輸出建立的雜湊表;   

(2)完成關鍵字為29的元素的查詢;   

(3)在上述雜湊表中刪除關鍵字為77的元素,再顯示雜湊表。   

*程式輸出:建立的雜湊表,29的位置,以及刪除後的雜湊表  

*/

#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執行結果:

知識點總結:

其實對於雜湊表的建立不難,關鍵點是解決衝突的問題,著重考慮一下當出現衝突之後怎麼做,這一點重中之重。

學習心得:

雜湊表是處理大資料的很好的工具。

第十五周 專案1 驗證演算法

檔名稱 main.cpp,btree.h,btree.cpp 完成日期 2015年11月5日 版本號 code block 12.11 問題描述 include define maxsize 100 定義最大雜湊表長度 define nullkey 1 定義空關鍵字值 define delkey 2...

第十五周專案1 驗證演算法

檔名稱 專案1.cbp 作 者 張晗 完成日期 2015年12月18日 版 本 號 v1.0 的雜湊表,裝填因子定為0.8,雜湊函式為h k key p,p 11,採用線性探查法解決衝突。測試中 1 輸出建立的雜湊表 2 完成關鍵字為29的元素的查詢 3 在上述雜湊表中刪除關鍵字為77的元素,再顯示...

第十五周專案1 驗證演算法

問題及 all right reserved.檔名稱 驗證演算法.cpp 版本號 v1.0 問題描述 1 認真閱讀並驗證雜湊表實施查詢的相關演算法,寫程式建立序列的雜湊表,裝填因子定為0.8,雜湊函式為h k key p,p 11,採用線性探查法解決衝突。測試中 1 輸出建立的雜湊表 2 完成關鍵字...