MEMAHAMI ALGORITMA PENCARIAN DENGAN PENDEKATAN COMPUTATIONAL THINKING

Tujuan Pembelajaran
  1. Memahami konsep dasar algoritma pencarian linear.
  2. Mengimplementasikan pencarian linear dalam memecahkan persoalan pencarian.

Pencarian Linear adalah algoritma pencarian yang bekerja dengan memeriksa setiap elemen dalam sekumpulan data atau daftar satu per satu dari awal hingga elemen yang dicari ditemukan. Pada setiap pengulangan, data pada indeks ke-i dibandingkan dengan elemen yang dicari. Jika elemen tersebut tidak ditemukan, pencarian akan terus berjalan hingga mencapai akhir daftar. Algoritma ini dianggap sebagai salah satu metode pencarian yang paling sederhana.

Perhatikan barisan angka berikut.

Ilustrasi Cara Kerja Algoritma Linear Search

Untuk dapat menemukan angka tersebut, berikut langkah-langkah pencarian linear:

  1. Mulai dari elemen pertama dalam barisan.
    Ilustrasi Cara Kerja Algoritma Linear Search
  2. Bandingkan elemen saat ini dengan elemen yang dicari.
  3. Jika cocok, berhenti dan kembalikan hasilnya.
  4. Ulangi langkah 2-4 hingga elemen ditemukan atau barisan angka habis diperiksa.
    Ilustrasi Cara Kerja Algoritma Linear Search

    Ilustrasi Cara Kerja Algoritma Linear Search

Dengan demikian, di dapatkan pencarian angka 7 dengan pencarian linear ditemukan pada indeks ke-3 dalam barisan.


Kita mengenali pola berikut dalam pencarian linear:

  • Pencarian dilakukan secara berurutan dari awal hingga akhir.
  • Jika elemen yang dicari berada di awal daftar/barisan, pencarian lebih cepat.
  • Jika elemen yang dicari berada di akhir daftar/barisan atau tidak ada, pencarian akan lebih lama.
  • Tidak memerlukan data yang terurut, tetapi lebih lambat dibandingkan pencarian biner pada data terurut.

Berdasarkan tujuannya, pencarian terbagi menjadi 3 tujuan, yaitu:

  1. Pencarian dilakukan hanya untuk mengetahui apakah data tersebut ada dalam sekumpulan data atau tidak.
  2. Pencarian dilakukan untuk menentukan posisi dari data yang dicari, dan posisi tersebut dibutuhkan untuk keperluan tertentu.
  3. Pencarian dilakukan untuk mencari suatu data kemudian menampilkan semua posisi dan frekuensi kemunculannnya (jika kemunculan data lebih dari satu kali dalam sekumpulan data).

Berdasarkan uraian diatas, mari kita coba untuk mengamati bagaimana cara kerja algoritma pencarian linear untuk beberapa tujuan pencarian.

Pertama, kita akan melakukan pencarian dengan algoritma pencarian linear hanya untuk mengetahui apakah data tersebut ada dalam sekumpulan data atau tidak. Kemudian, kita akan menunjukkan dimana posisi data tersebut dalam sekumpulan data.

Perhatikan barisan angka berikut. Cobalah masukkan angka “17” sebagai target pada kolom masukan.




3
5
7
9
11
13
15
17
19
21
17
20



Kedua, kita akan melakukan pencarian dengan algoritma pencarian linear untuk mencari suatu data kemudian menampilkan semua posisi dan frekuensi kemunculannnya (jika kemunculan data lebih dari satu kali dalam sekumpulan data).

Perhatikan barisan angka berikut. Cobalah masukkan angka “17” sebagai target pada kolom masukan.




3
5
7
9
11
13
15
17
19
21
17
20

Setelah mencoba simulasi visualisasi di atas, kalian diharapkan mampu memahami bagaimana pencarian linear bekerja. Dengan pencarian linear, setiap elemen diperiksa satu per satu hingga elemen yang dicari ditemukan atau seluruh elemen telah diperiksa. Tetapi, pencarian linear kurang efisien pada data besar karena memeriksa elemen secara berurutan, sehingga waktu pencarian akan lebih lama.


Dalam pencarian linear, kita dapat menyederhanakan masalah sebagai berikut:

  1. Bayangkan mencari nama dalam daftar kehadiran guru di sekolah.
  2. Kita hanya perlu membandingkan nama satu per satu, tanpa perlu mengetahui struktur daftar secara kompleks.
  3. Dengan pemahaman ini, kita dapat menerapkan konsep yang sama pada daftar lain, seperti angka atau objek visual.

Berikut adalah langkah-langkah algoritma pencarian linear:

  1. Ambil sekumpulan data (misalnya daftar nama atau angka).
  2. Tentukan elemen yang dicari.
  3. Periksa elemen satu per satu:
    • Jika cocok, kembalikan indeksnya.
    • Jika tidak, lanjutkan ke elemen berikutnya.
  4. Jika data habis diperiksa tanpa menemukan elemen, beri tahu bahwa elemen tidak ditemukan.

Analisis Best Case – Worst Case pada Algoritma Pencarian Linear

✅ Best Case:

Kondisi terbaik saat pencarian dilakukan, dimana data ditemukan dengan cepat:

  1. Data ditemukan pada posisi pertama dalam daftar kecil (misalnya, hanya 5–10 data).
  2. Data berada di awal dalam daftar sedang (misalnya 50 data).
  3. Jumlah data sangat sedikit sehingga pencarian selesai hanya dalam satu langkah.

❌ Worst Case:

Kondisi terburuk saat pencarian dilakukan, dimana pencarian memakan waktu paling lama:

  1. Data berada di posisi terakhir dari daftar yang sangat panjang (ratusan hingga ribuan data).
  2. Data tidak ada dalam daftar sehingga semua elemen harus diperiksa.
  3. Ukuran data besar dan data berada di akhir, misalnya dalam 1.000 data, data berada di urutan ke-999.

Perhatikan barisan angka berikut ini:

13
3
7
9
11
5
8
10

Berapa langkah yang dibutuhkan untuk menemukan angka 11 dengan algoritma pencarian linear?

Perhatikan barisan angka berikut ini:

5
10
15
20
25
30

Dari barisan angka di atas, berapa langkah yang dibutuhkan untuk menemukan angka 30 dengan algoritma pencarian linear?

Perhatikan barisan nilai berikut ini:

70
76
72
85
87
70
72
95
80
72

Dari barisan nilai di atas, berapa langkah yang dibutuhkan untuk menemukan nilai 72 yang pertama kali muncul dalam barisan dengan algoritma pencarian linear?

Perhatikan barisan nilai berikut ini:

70
76
72
85
87
70
72
95
80
72

Dari barisan nilai di atas, tunjukkan di indeks mana saja nilai 72 ditemukan dalam barisan?

Perhatikan barisan angka berikut ini:

5
7
12
19
21
23

Dari barisan angka di atas, apakah angka 25 ditemukan dalam barisan? Berapa banyak langkah yang dibutuhkan untuk menemukannya dengan algoritma pencarian linear?