假定有一個表list和一個待查找關鍵字searchnum,要找到表中關鍵字與 searchnum相匹配的記錄,如果表中list有n個記錄,且list[i].key表示記錄i的關鍵字值,可以通過依次檢查關鍵字值list[0].key,list[1].key,…list[n-1].key對其進行查找 ,直至找到該記錄所在位置,或者檢查完表中全部記錄爲止,這種方式就叫順序查找,時間複雜度:
代碼實現:
#include <iostream>
#include<stdio.h>
#define MAX_SIZE 100
typedef struct
{
int key;
}element;
element list[MAX_SIZE];
using namespace std;
//順序查找
int seqsearch(element list[],int searchnum,int n)
{
int i;
//作爲結束查找的哨兵
list[n].key=searchnum;
for(i=0;list[i].key!=searchnum;i++);
return ((i<n)? i:-1);
}