PERTEMUAN 10
Searching Advanced
SEARCHING LEBIH CEPAT:
Pilih Cara yang Tepat
Sequential vs Binary Search (Praktis & Intuitif)
01 / 22
Tujuan Pembelajaran
🎯 Apa yang akan kita capai?

Setelah pertemuan ini:

📊Membandingkan dua metode pencarian.
🔢Menghitung jumlah langkah.
⚖️Memilih metode yang tepat sesuai kondisi.
02 / 22
Review Cepat
Apa yang kamu ingat?

Sequential Search

?

Binary Search

?

Aktivitas: Jawab cepat secara lisan!

03 / 22
Perbandingan Visual
Ilustrasi Bersamaan
Cari angka:

Sequential Search

Binary Search

04 / 22
Pertanyaan Kunci
Mana yang lebih cepat?

Selalu?

Dalam kondisi apa?

"Berikan pendapatmu sebelum kita buktikan!"
05 / 22
Eksperimen 1
Eksperimen 1: Data 10 Angka
Pilih posisi target: Target:
Sequential Search?
Binary Search?
06 / 22
Diskusi Hasil
Hasil Eksperimen 1
🚶Sequential: 10 langkah.
🏃Binary: ±4 langkah.
"Kenapa bisa beda jauh?"
07 / 22
Eksperimen 2
Eksperimen 2: Data 100 Angka
Pilih posisi target: Target:
Seq Search?
Bin Search?
08 / 22
Insight Utama
Cara Berbeda, Hasil Berbeda
Sequential: Langkah bertambah secara linear.
✖️Binary: Langkah bertambah secara logaritmik (sangat lambat).
"Binary 'melompat', bukan 'menyusuri'."
09 / 22
Syarat Binary Search
⚠️ Syarat Mutlak

Data harus TERURUT.

Kalau tidak terurut?

Binary search akan memberikan jawaban yang salah atau tersesat jika data acak.
10 / 22
Biaya Tersembunyi
Ada Harga yang Harus Dibayar

Binary Search butuh:

SORTING DULU

Worth it tidak?

11 / 22
Studi Kasus 1
Kasus: Data Kecil & Sekali Cari

Data cuma 10 angka, dan kamu cuma butuh cari satu kali saja.

Sequential
Binary

Mana pilihanmu? Mengapa?

12 / 22
Studi Kasus 2
Kasus: Data Besar & Sering Dicari

Data 1 juta record, dan aplikasi akan melakukan pencarian ribuan kali setiap jam.

Sequential
Binary (+ sorting sekali di awal)
13 / 22
Studi Kasus 3
Kasus: Data Sering Berubah

Data masuk dan keluar setiap detik. Data tidak pernah diam.

🔄Sorting terus-menerus? (Sangat mahal)
🚶Atau tetap pakai sequential?

Ini adalah tantangan nyata di dunia sistem informasi.

14 / 22
Insight Besar
Kebijaksanaan dalam Memilih
"Tidak ada algoritma terbaik untuk semua kondisi."
15 / 22
Refleksi Coding
Implementasi Langkah

Tambahkan variabel counter ke programmu:

int langkah = 0;
while (left <= right) {
    langkah++; // Hitung setiap iterasi
    // ... logic binary search ...
}
cout << "Total langkah: " << langkah;

Observasi perbedaannya secara langsung di terminal.

16 / 22
Pertanyaan Refleksi
Waktunya Berpikir
🤔Kapan Sequential cukup memadai?
💡Kapan Binary mutlak diperlukan?
17 / 22
Latihan Individu
Uji Pemahaman

Diberikan Array: [3, 9, 1, 7, 5, 8]

0
3
1
9
2
1
3
7
4
5
5
8

Tugas:

  1. Berapa langkah Sequential Search untuk cari angka 5?
  2. Bisakah kita langsung pakai Binary Search?
  3. Jika diurutkan → coba hitung langkah Binary Search untuk cari 5.
18 / 22
Diskusi Jawaban
Bedah Latihan
Tidak bisa Binary Search langsung (belum terurut).
Setelah sorting [1, 3, 5, 7, 8, 9] → baru bisa Binary.
Pencarian angka 5:
Sequential: 5 langkah (di index 4 dari data asli).
Binary (setelah urut): 1-3 langkah (tergantung pembulatan mid).
19 / 22
Ringkasan
💡 Kesimpulan
🔹Sequential: Sederhana, fleksibel (data acak OK).
🔹Binary: Cepat, tapi ada syarat (harus terurut).
20 / 22
Pesan Utama
Pesan Hari Ini
“Algoritma terbaik adalah yang paling sesuai kondisi”
21 / 22
Next Meeting
🚀 Preview Berikutnya

Sorting: Kenapa penting untuk binary search?

Bagaimana cara mengurutkan data dengan cepat?