就是從一群資料中找出符合某些條件的資料,當資料量非常龐大時,如何在短時間內有效率地找到所要的資料,因此,搜尋演算法就變得相當重要。
又稱循序搜尋法,是最簡單的搜尋法。原理是在資料列中從頭開始逐一的搜尋,一筆一筆的資料值與搜尋目標值做比對,直到找到為止。此種搜尋優點是搜尋前不需要將資料做任何排序,因為都是從頭開始搜尋。缺點是若目標資料剛好排在最後一筆,則需要作n次的比對,因此不適合資料量過大的搜尋。
下面利用75 50 60 20 90 40 80
搜尋20
為例
實作方式就是使用一般的迴圈
let data=[75,50,60,20,90,40,80];
let target=20;
function linearSearch(arr,target){
for(let i=0;i<arr.length;i++){
if(arr[i]===target){
return "有搜尋結果: 在第" + (i+1) + "項";
}
}
return "無搜尋結果";
}
console.log(linearSearch(data,target))
//有搜尋結果: 在第4項
#Linear Search
data=[75,50,60,20,90,40,80]
target=20
def linearSearch(arr, target):
for i in range(len(arr)):
if arr[i] == target:
return "有搜尋結果: 在第" + str(i + 1) + "項"
return "無搜尋結果"
print(linearSearch(data,target))
#有搜尋結果: 在第4項