Algoritmalar

Doğrusal Arama

Arama O(n) O(1)

Hedef bulunana dek diziyi eleman eleman gezer — sıralı olsun olmasın her dizide çalışır.

en fazla 16 sayı (0–999)
Boşta
23
7
41
15
3
34
9
28

15 için 8 eleman taranıyor.

Değişmezi'den önceki her indeks kontrol edildi ve hedef değil.

1/6
sondaj0i0
linear-search.c
int linearSearch(int arr[], int n, int target) {
for (int i = 0; i < n; i++) {
if (arr[i] == target)
return i;
}
return -1;
}

Diziyi baştan sona yürü ve her elemanı hedefle karşılaştır; bulana ya da dizi bitene kadar.

En iyi durum

Hedef ilk eleman: O(1).

En kötü durum

Hedef sonda veya yok: O(n).

Ne zaman kullanılır?

Sırasız veya çok küçük diziler, bağlı listeler ya da tek seferlik aramalar (sıralamaya değmez).