Memahami Linear Search Algorithm: Algoritma Pencarian Sederhana untuk Data

Engineer Palsu
2 min readOct 7, 2023

--

Algoritma Pencarian Linier, juga dikenal sebagai Sequential Search, adalah algoritma yang digunakan untuk mencari elemen tertentu dalam kumpulan data (biasanya dalam bentuk array atau list). Ini adalah pendekatan paling sederhana dalam mencari elemen, di mana algoritma secara berurutan mengunjungi dan mengecek setiap elemen dalam kumpulan data hingga menemukan elemen yang dicari atau mencapai akhir kumpulan data.

Bagaimana Cara Kerja Linear Search?

Cara kerja Algoritma Pencarian Linier dapat dijelaskan dalam beberapa langkah sederhana:

  1. Mulailah dari elemen pertama (indeks 0) dalam kumpulan data.
  2. Bandingkan elemen tersebut dengan elemen yang Anda cari.
  3. Jika elemen yang dicari ditemukan, kembalikan indeks elemen tersebut.
  4. Jika elemen yang dicari tidak ditemukan, lanjutkan ke elemen berikutnya dalam kumpulan data.
  5. Ulangi langkah 2–4 hingga Anda menemukan elemen yang dicari atau mencapai akhir kumpulan data.
  6. Jika Anda mencapai akhir kumpulan data tanpa menemukan elemen yang dicari, kembalikan nilai yang menunjukkan bahwa elemen tidak ditemukan (misalnya, -1).
  7. Jika elemen yang dicari tidak ditemukan, lanjutkan ke elemen berikutnya dalam kumpulan data.
  8. Ulangi langkah 2–4 hingga Anda menemukan elemen yang dicari atau mencapai akhir kumpulan data.
  9. Jika Anda mencapai akhir kumpulan data tanpa menemukan elemen yang dicari, kembalikan nilai yang menunjukkan bahwa elemen tidak ditemukan (misalnya, -1).

Contoh menggunakan pemrograman python

def linear_search(arr, target):
for index, element in enumerate(arr):
if element == target:
return index
return None

def main():
my_list = [1, 3, 5, 9, 7, 12, 10, 2, 8, 6]
target_element = 12

result = linear_search(my_list, target_element)
if result is not None:
print(f"Elemen {target_element} ditemukan pada indeks {result}.")
else:
print(f"Elemen {target_element} tidak ditemukan dalam daftar.")

if __name__ == "__main__":
main()

Algoritma Pencarian Linier sederhana dan mudah dimengerti, tetapi cenderung tidak efisien untuk kumpulan data yang sangat besar. Sebaliknya, ia cocok untuk:

  1. Kumpulan data kecil atau terurut secara acak.
  2. Ketika Anda hanya perlu mencari elemen beberapa kali dalam kumpulan data.
  3. Ketika Anda tidak tahu apakah data sudah terurut atau tidak.

Namun, jika Anda berurusan dengan kumpulan data yang besar dan terurut, maka Algoritma Pencarian Binary (pencarian biner) atau struktur data hash (pencarian dengan hash) mungkin akan lebih efisien.

--

--