查詢 順序查詢 C語言

2021-10-08 06:12:02 字數 2111 閱讀 9666

順序查詢(sequential search)的查詢過程為:從表的一端開始,依次將表中的關鍵字和給定的值進行比較,若表中的關鍵字和給定的值相等,則查詢成功,反之查詢失敗。

--優點

演算法簡單,適用於順序結構和鏈式結構

缺點平均查詢長度較大,效率較低

順序查詢的優化 (詳細見**)

普通優化

順序查詢

設定監視哨的順序查詢

#include

#include

typedef

int keytype;

typedef

char infotype;

typedef

struct

key;

void

search_seq01

(key *k, keytype key,

int len)

//順序查詢

}void

search_seq02

(key *k, keytype key,

int len)

//設定監視哨查詢

//順序查詢

intsearch_seq02

(sqlist l, keytype key)

//設定監視哨順序查詢

//初始化單鏈表

void

createlist

(linklist &l)

//建立單鏈表

printf

("單鏈表建立成功!\n");

}void

displist

(linklist &l)

//遍歷單鏈表

printf

("\n");

while

(q->next)

printf

("\n\n");

}linklist search_seq01

(linklist &l, keytype key)

//順序查詢

return p;

}linklist search_seq02

(linklist &l, keytype key)

//監視哨查詢

C 語言順序表查詢和折半查詢

順序查詢 查詢最好的情況是在第乙個位置找到了,演算法時間複雜度為o 1 最壞的情況下在最後乙個位置,需要n次比較,時間複雜度為o n 查不到,需要比較n 1次,時間複雜度為o n 1 關鍵字在任何乙個位置上是相同的,所以平均查詢次數為 n 1 2 最終時間複雜度為o n n 陣列長度,key 查詢關...

C語言實現順序查詢

核心 從資料的第乙個元素開始,依次比較,直到找到目標資料或查詢失敗。1.從表中的第乙個元素開始,依次與關鍵字比較。2.若某個元素匹配關鍵字,則 查詢成功。3.若查詢到最後乙個元素還未匹配關鍵字,則 查詢失敗。順序查詢對錶中元素的排序無要求,這些元素在表中可以任意排序,這使得順序查詢的適應性很高。順序...

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

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