Materi: Strategi Algoritme
Untuk bisa menyelesaikan masalah secara efektif dan efisien serta optimal tentunya kita perlu strategi. 2 jenis strategi algoritma yang sangat penting dalam ilmu komputer adalah algoritma pencarian dan algoritma pengurutan.
- Algoritma pencarian
Apa itu mencari? Mencari adalah menemukan sesuatu (benda, angka, konsep, informasi) yang memenuhi kriteria tertentu dari sekumpulan benda atau objek lain.
Berikan contohnya mencari pakaian seragam di lemari pakaian.
Elemen pada masalah pencarian meliputi:
- Sekumpulan benda atau objek.
- Kriteria dari benda atau objek yang dicari.
- Pengecekan benda atau objek, untuk memeriksa apakah ia memenuhi
kriteria pencarian.
Pertanyaan selanjutnya, bagaiman strategi untuk mencari? mengambil pakaian secara
acak dan mengecek apakah pakaian tersebut ialah seragam batik. Cara lain?
Tugas siswa: Bermain tebak angka (halaman 30, Buku Kementerian)
Kesimpulan:
Strategi tebak angka dengan mencoba semua kemungkinan solusi satu persatu sampai menemukan solusi yang benar disebut dengan strategi Brute Force. Kelebihan dapat diterapkan pada hampir semua masalah tanpa perlu pemahaman mendalam tentang struktur masalah. Kekurangan sangat lambat dan tidak efisien, terutama jika jumlah data atau kemungkinan solusinya sangat besar serta tidak kreatif karena tanpa menggunakan strategi khusus (mencoba semua kemungkinan atau tebak-tebak).
Strategi tebak angka dengan mengambil angka tengah (seperti binary search) adalah strategi Divide and Conquer (bagi dan taklukkan). Strategi ini memecah masalah besar menjadi sub-masalah yang lebih kecil, menyelesaikan sub-masalah tersebut, dan kemudian menggabungkan hasilnya untuk memperoleh solusi akhir. Kelebihan efektif dan efisien. Kekurangan memerlukan pemahaman yang baik tentang struktur masalah dan bagaimana memecahnya menjadi sub-masalah yang lebih kecil.
Catatan:
Algoritma pencarian adalah algoritma yang digunakan untuk menemukan data atau informasi tertentu dalam struktur data seperti array, list, tree, atau database.
Contoh algoritma pencarian: (opsi)
- Linear Search: Mencari elemen dengan memeriksa setiap elemen satu per satu.
- Binary Search: Mencari elemen dalam list yang sudah terurut dengan membagi list menjadi dua bagian dan membandingkan elemen tengah.
- Hash Search: Menggunakan tabel hash untuk menemukan elemen dengan cepat berdasarkan kunci pencarian.
Sumber:
Buku Kementerian Kelas X