Perancangan Algoritma & Efisiensi Komputasi
Algoritma yang baik tidak hanya benar, tapi juga cepat dan hemat memori! Bandingkan kecepatan Linear Search vs Binary Search, pahami mekanisme pengurutan data Bubble Sort, pelajari strategi Greedy mencari solusi optimal instan, serta pemecahan masalah elegan dengan Rekursi.
Tujuan Pembelajaran
Kompetensi yang akan kamu kuasai setelah menyelesaikan modul ini
Menjelaskan mengapa Binary Search jauh lebih cepat pada data terurut dibandingkan pencarian sekuensial satu per satu.
Memahami mekanisme penukaran elemen bersebelahan untuk mengurutkan daftar angka dari terkecil ke terbesar.
Mengambil keputusan lokal terbaik di setiap langkah (contoh: menghitung kembalian uang pecahan koin minimum).
Menjelaskan fungsi yang memanggil dirinya sendiri dengan Base Case (titik henti) dan Recursive Step.
Perbandingan Efisiensi Pencarian Data
Mencari 1 data di antara 1.000.000 data: Linear (1.000.000 cek) vs Binary (hanya 20 cek!)
1. Linear Search (Sekuensial)
Mengecek elemen satu per satu dari awal sampai akhir. Cocok untuk data yang belum terurut acak. Kompleksitas: O(N).
2. Binary Search (Bagi Dua)
Melihat titik tengah data terurut, jika target lebih besar, buang separuh data kiri! Kompleksitas super cepat: O(log N).
Algoritma Greedy & Rekursi
Strategi pemecahan masalah algoritmis tingkat lanjut
Ingin kembalian Rp 8.000 dengan keping koin paling sedikit? Greedy selalu mengambil koin nominal terbesar yang tersedia lebih dulu (Rp 5.000 + Rp 2.000 + Rp 1.000 = 3 koin).
Fungsi memanggil dirinya sendiri. Wajib memiliki Base Case agar tidak terjadi Infinite Loop / Stack Overflow.
faktorial(n) = n * faktorial(n - 1)
Interactive Search Race Simulator
Pilih angka target lalu amati adu kecepatan langkah antara Linear Search vs Binary Search!
Evaluasi Formatif: Perancangan Algoritma
Uji pemahaman efisiensi searching, sorting, greedy, dan rekursi (Total Skor: 100)
Pilihan Ganda (5 Soal ยท Bobot: 25 Poin)
1. Syarat mutlak yang harus dipenuhi agar algoritma Binary Search dapat dijalankan adalah...
2. Cara kerja algoritma Bubble Sort dalam mengurutkan angka adalah...
3. Algoritma Greedy adalah strategi pemecahan masalah yang...
4. Pada fungsi rekursif, kondisi pemberhentian yang mencegah fungsi memanggil dirinya tanpa henti disebut...
5. Nilai dari faktorial(4) atau 4! adalah...
Benar atau Salah (5 Soal ยท Bobot: 25 Poin)
Menjodohkan Algoritma & Kompleksitas/Karakternya (5 Pasangan ยท Bobot: 25 Poin)
Urutan Eksekusi Binary Search (Bobot: 25 Poin)
Urutkan langkah pencarian nilai angka dengan algoritma Binary Search:
๐ Riwayat Percobaan Evaluasi Kamu:
Rangkuman Materi & Refleksi Belajar
Tuliskan pemahaman dan pengalaman belajarmu pada materi ini
1. Efisiensi Skala Besar: Perbedaan algoritma Linear dan Binary Search menentukan apakah server web merespons dalam 1 milidetik atau mengalami freeze.
2. Beragam Solusi: Sorting dan Greedy mengajarkan bahwa satu masalah dapat dipecahkan dengan berbagai taktik sesuai kebutuhan komputasi.
3. Berpikir Rekursif: Memecah masalah menjadi versi dirinya yang lebih kecil adalah seni berpikir programmer tingkat mahir.