/*
檔名稱:main.cpp
作者 :王超
完成日期:2023年12月7日
問題描述:驗證演算法
*/#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) //建立雜湊表
for (i=0; i
insertht(ha,n1,x[i],p);
}int searchht(hashtable ha,int p,keytype k) //在雜湊表中查詢關鍵字k
if (ha[adr].key==k) //查詢成功
return adr;
else //查詢失敗
return -1;
}int deleteht(hashtable ha,int p,int k,int &n) //刪除雜湊表中關鍵字k
else //在雜湊表中未找到該關鍵字
return 0;
}void dispht(hashtable ha,int n,int m) //輸出雜湊表
int main()
; int n=11,m=13,p=13,i,k=29;
hashtable ha;
createht(ha,x,n,m,p);
printf("\n");
dispht(ha,n,m);
i=searchht(ha,p,k);
if (i!=-1)
printf(" ha[%d].key=%d\n",i,k);
else
printf(" 未找到%d\n",k);
k=77;
printf(" 刪除關鍵字%d\n",k);
deleteht(ha,p,k,n);
dispht(ha,n,m);
i=searchht(ha,p,k);
if (i!=-1)
printf(" ha[%d].key=%d\n",i,k);
else
printf(" 未找到%d\n",k);
printf(" 插入關鍵字%d\n",k);
第十五周 專案1 驗證演算法(1)
問題描述 認真閱讀並驗證雜湊表實施查詢的相關演算法,寫程式建立序列的雜湊表,裝填因子定為0.8,雜湊函式為h k key p,p 11,採用線性探查法解決衝突。測試中 1 輸出建立的雜湊表 2 完成關鍵字為29的元素的查詢 3 在上述雜湊表中刪除關鍵字為77的元素,再顯示雜湊表。輸入描述 若干資料 ...
(第十五周專案1)驗證演算法(1)
問題 檔名稱 專案1.cpp 作 者 黃玉嬌 完成日期 2016年12月7日 版 本 號 v1.0 的雜湊表,裝填因子定為0.8,雜湊函式為h k key p,p 11,採用線性探查法解決衝突。測試中 1 輸出建立的雜湊表 2 完成關鍵字為29的元素的查詢 3 在上述雜湊表中刪除關鍵字為77的元素,...
第十五周 專案1 驗證演算法
檔名稱 main.cpp,btree.h,btree.cpp 完成日期 2015年11月5日 版本號 code block 12.11 問題描述 include define maxsize 100 定義最大雜湊表長度 define nullkey 1 定義空關鍵字值 define delkey 2...