順序查詢(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...