GreedyPemulaFase C–FE1E5
Activity Selection
Activity Selection adalah masalah greedy klasik: dari sekumpulan kegiatan dengan waktu mulai dan selesai, pilih sebanyak mungkin yang tidak bertabrakan. Kuncinya, urutkan kegiatan berdasarkan waktu SELESAI paling awal, lalu pilih setiap kegiatan yang mulainya tidak menabrak kegiatan terpilih terakhir. Selalu mengambil yang selesai paling dulu menyisakan waktu terbanyak untuk sisanya. Visualisasi menyusun kegiatan di garis waktu dan memilih yang muat.
Contoh kasus
Menyusun jadwal kegiatan OSIS atau ekskul agar satu ruangan bisa dipakai untuk sebanyak mungkin acara dalam sehari.
Silabus
Urutkan berdasarkan waktu selesai; pilih tiap kegiatan yang mulainya tidak menabrak yang terakhir dipilih.
Tujuan Belajar
- ·Memahami strategi greedy (pilihan terbaik lokal)
- ·Menjelaskan mengapa memilih yang selesai paling awal itu optimal
- ·Menerapkan pengecekan tumpang-tindih waktu
Cara Kerja
- ·Urutkan semua kegiatan berdasarkan waktu selesai paling awal.
- ·Pilih kegiatan pertama (yang selesai paling dulu).
- ·Untuk sisanya, pilih bila mulainya >= selesai kegiatan terakhir yang dipilih.
- ·Lewati yang bertabrakan — hasilnya jumlah kegiatan maksimum.
Prasyarat
- ·Interval waktu (mulai, selesai)
- ·Pengurutan
- ·Perbandingan
Contoh Nyata
- ·Menjadwalkan pemakaian satu ruangan atau lapangan.
- ·Mengatur pekerjaan pada satu mesin/prosesor.
- ·Menyusun agenda acara agar tidak bentrok.
Kompleksitas O(n log n) karena pengurutan
