一.循序搜尋:從第一個資料開始搜尋,直到找到資料或全部資料都搜尋過為止。
優點:資料不需要事先排序,容易撰寫
缺點:搜尋效率比較差
程式實作:
#include <iostream>
using namespace std;
int main(){
int i,key,N=7;
int A[N]={9,18,24,25,44,57,63};
cout<<"請輸入要搜尋的數字:";
cin>>key;
for(i=0;i<N;i++){ //從A[0]~A[N-1]搜尋
if(A[i]==key)
break;
}
if(i<N)
cout<<key<<"在第"<<i<<"個位置"<<endl;
else
cout<<"未找到"<<key<<endl;
}
二.二分搜尋法:資料事先排序好,每次將資料分割成兩部分,用中間值比較大小,藉此縮小搜尋範圍,持續分割直到找完或找到為止。
作業