設定「哨兵」,哨兵就是待查值,將它放在查詢方向的「盡頭」處,免去了在查詢過程中每一次比較後都要判斷查詢位置是否越界,從而提高查詢速度。
順序查詢偽**描述如下:
1、設定哨兵;
2、初始化查詢的起始下標i=n;
3、若r[i]與k相等,則返回當前i的值;否則,繼續比較前乙個記錄;
c++實現如下:
#include using namespace std;
const int maxsize = 20;
class seqlist
;seqlist::seqlist(int a, int k)
}int seqlist::seqsearch(int k)
int main()
, n(13), k, t;
seqlist seq(b, n);
cout << "輸入查詢值k:"; cin >> k;
t = seq.seqsearch(k);
if (t < n)cout << k << "對應的下標為:" << t << endl;
else cout << k << "不在該序列之中" << endl;
return 0;
}
C語言實現順序查詢
核心 從資料的第乙個元素開始,依次比較,直到找到目標資料或查詢失敗。1.從表中的第乙個元素開始,依次與關鍵字比較。2.若某個元素匹配關鍵字,則 查詢成功。3.若查詢到最後乙個元素還未匹配關鍵字,則 查詢失敗。順序查詢對錶中元素的排序無要求,這些元素在表中可以任意排序,這使得順序查詢的適應性很高。順序...
C語言 佇列 順序結構 陣列實現
include include 陣列去模擬棧佇列的順序儲存 define max size 1024 順序佇列結構體 typedef struct seqqueue seqqueue 初始化棧 seqqueue init seqqueue queue size 0 return queue 入隊 v...
陣列查詢 C 語言實現
本文主要包含常見的陣列查詢方法。線性查詢是最為簡單粗暴的查詢方法了,直接從陣列首元素開始查詢,直到找到要查詢的元素為止。include include int linesearch int p,int length,int search int binarysearch int p,int low,...