/*
檔名稱:jcy
作 者:賈存鈺
完成日期:2023年12月7日
問題描述: 已知乙個關鍵字序列為if、while、for、case、do、break、else、struct、union、int、double、float、char、long、bool,共15個字串,雜湊函式h(key)為關鍵字的第乙個字母在字母表中的序號,雜湊表的表長為26。
(1)若處理衝突的方法採用線性探測法,請設計演算法,輸出每個關鍵字對應的h(key),輸出雜湊表,並求成功情況下的平均查詢長度。 */
#include
#include
#define n 15
#define m 26
int h(char *s)
int main()
; int i, j, k;
char ht[m][10];
int det[m]; //存放探測次數
for(i=0; i0]='\0';
det[i]=0;
}printf("字串 key\th(key)\n");
printf("------------------------\n");
for(i=0; is[i]); //求雜湊值
printf("%s\t\t%d\n", s[i],j);
k=0; //探測次數初值
while(1)
else //衝突時,採用線性探查法求下乙個位址
}det[j]=k;
}printf("---------------------\n");
printf("雜湊表\n");
printf("位置\t字串\t探查次數\n");
printf("---------------------\n");
for(i=0; iprintf("%d\t%s\t%d\n", i, ht[i], det[i]);
printf("---------------------\n");
k=0;
for(i=0; iprintf("查詢成功情況下的平均查詢長度 %f\n", 1.0
*k/n);
return
0;}
執行過程:
第十四周專案三
問題及 all right reserved.檔名稱 是否二叉排序樹.cpp 版本號 v1.0 問題描述 設計乙個演算法,判斷給定的二叉樹是否是二叉排序樹。輸入描述 用二叉樹的形式輸入數字 程式輸出 判斷結果 include include define maxsize 100 typedef in...
第十四周 專案1(2)
問題描述及 ifndef btree h included define btree h included 煙台大學計控學院 作 者 王力源 完成日期 2016年12月8日 問題描述 請用 共n 25據,每塊資料個數s 5作為資料表,自行構造索引表,分別對查詢85測試。endif btree h i...
第十四周專案三
檔名稱 jcy 作 者 賈存鈺 完成日期 2017 年 12 月 7 日 問題描述 實現b 樹的基本操作。基於序列完成測試。1 建立對應的3階b 樹b,用括號法輸出b樹。2 從b中分別刪除關鍵字為8和1的節點,用括號法輸出刪除節點後的b樹。輸入描述 無需輸入 程式輸出 實現各種演算法的函式的測試結果...