查詢 順序查詢

2021-09-10 07:10:34 字數 1066 閱讀 5268

順序查詢

定義:順序查詢就是在檔案的關鍵字集合key[1,2,…,n]中找出與給定的關鍵字key相等的檔案記錄。

步驟

1.從檔案的第乙個記錄開始,將每個記錄的關鍵字與給定的關鍵字key進行比較

2.如果查詢到某個記錄的關鍵字等於key,則查詢成功返回該記錄的位址;如果所有關鍵字都與key進行了比較,但都未匹配,則本次查詢失敗返回失敗標誌

其演算法描述如下:

int search(keytype key,int n,keytype key)

recordtype;

每個記錄中包含乙個關鍵字域key和乙個資料域data。這種記錄的順序查詢演算法可描述為:

int search(recordtype r,int n,keytype key)

student;

為方便起見,這裡直接初始化給結構體陣列賦值。但在實際應用中,記錄的獲得往往都是從檔案中讀取的。

接下來採用順序查詢的方法找到所需編號1001學生的具體資訊。這裡的關鍵字為學生的學號

,因為在學生記錄中,只有學號是能唯一標識學生身份的,姓名和成績都有可能相同故不能作為關鍵字。

具體**如下:

#includetypedef struct student

student;

int search(student stu,int n,int key)

{ int i;

for(i=0;i執行結果如圖所示:

查詢 順序查詢

順序查詢的思路 從資料的第乙個元素開始,依次將掃瞄到的關鍵字和給定值key比較。若當前掃瞄到的關鍵字和key相等,則查詢成功 若掃瞄結束還沒有找到和key相等的元素,就表示查詢給定的值不在表中。時間複雜度 o n 優點 1.演算法簡單 2.對錶結構沒有任何要求,用順序表或者用鍊錶都可以。3.表中元素...

查詢 順序查詢

查詢 根據給定的某個值,在查詢表中確定乙個其關鍵字等於給定值的記錄或資料元素。若表中存在這樣的乙個記錄,則稱查詢是成功的,此時查詢的結果為給出整個記錄的資訊,或指示該記錄在查詢表中的位置。若表中不存在關鍵字等於給定值的記錄,則稱查詢不成功,此時查詢的結果可給出乙個空記錄或者空指標。本篇文章討論在靜態...

查詢 順序查詢

查詢表 由同一種型別的資料元素構成的集合 jing態查詢表 只做查詢操作的查詢表 dong態查詢表 在查詢的過程中,還可以進行插入和刪除等的操作。關鍵字 資料元素中的某個資料項的值 主關鍵字 可以唯一表示乙個記錄的關鍵字 次關鍵字 可以表示多個紀錄的關鍵字 include using namespa...