資料結構實驗(C語言) 折半查詢 雜湊查詢

2021-09-26 18:15:42 字數 1111 閱讀 5884

#include

#include

#define hashsize 12

#define nullkey -32768

typedef

struct

sstable,hashtable;

/*typedef struct

hashtable;*/

int m=hashsize;

intsearch_seq

(sstable st,

int key)

intsearch_bin

(sstable st,

int key)

return0;

//順序表中不存在待查詢元素

}//初始化雜湊表

intinithashtable

(hashtable *h)

void

initsstable

(sstable &st)

//雜湊函式

inthash

(int key)

//插入關鍵字進入雜湊表

void

inserthash

(hashtable *h,

int key)

//雜湊表查詢關鍵字

intsearchhash

(hashtable h,

int key,

int*addr)

}return

*addr;

}int

main()

; hashtable h;

int i;

inithashtable

(&h)

;printf

("被查詢陣列\n");

for(i=

0;i) st.length=m;

printf

("\n");

printf

("---選單---\n");

printf

("1:順序查詢;2:折半查詢;3:雜湊查詢\n");

int n;

while(1

)case1:

case2:

}}}

資料結構 折半查詢 c

要求 1.若查詢成功,返回元素在有序陣列中的位置和查詢次數 2.若查詢失敗,返回出錯標誌和查詢次數。low應從0開始,因為設定的陣列下標從0開始 雖然mid不變,但是當key為首元素時,mid為1也就是第二元素,導致找不到第乙個元素。include using namespace std typed...

C語言 資料結構查詢 順序查詢及折半查詢

資料結構查詢 順序查詢和折半查詢 順序查詢 思路 從表中最後乙個記錄開始,逐個進行記錄的關鍵字和 給定值的比較,若某個記錄的關鍵字和給定值比較相等,則 返回返回記錄所在的位置,或查詢完所有記錄後還沒有發現 符合的記錄,則查詢失敗。include include include include def...

C語言資料結構之查詢(順序查詢,折半查詢)

為了演示方便,順序查詢和折半查詢的資料儲存結構就直接採用陣列。1 順序查詢 順序查詢跟我們用迴圈遍歷進行暴力破解類似。直接看 define n 11 順序查詢 適用於線性表 intseq search int arr,int key 對,順序查詢就是這麼簡單。2 折半查詢 二分查詢 折半查詢僅適用於...