1.Mudah
Algoritma O(n) memerlukan 3 detik untuk n = 1 juta. Kira-kira berapa lama untuk n = 2 juta?
- A9 detik
- B12 detik
- C6 detik
- D3 detik
2.Mudah
Apa artinya jika suatu operasi berjalan dalam waktu O(1)?
- ASelalu memerlukan tepat satu detik
- BWaktu eksekusinya tidak bertambah seiring ukuran input
- CHanya dapat dijalankan sekali
- DMemproses tepat satu elemen per detik waktu eksekusi
3.Mudah
Algoritma O(n²) memerlukan 1 detik untuk n = 1000. Kira-kira berapa lama untuk n = 2000?
- A8 detik
- B2 detik
- C4 detik
- D1 detik
4.Sedang
Rekurens T(n) = T(n − 1) + O(1) menghasilkan apa?
- AO(n²)
- BO(n)
- CO(2ⁿ)
- DO(log n)
5.Sedang
Mengapa dynamic programming tidak benar-benar mempercepat merge sort?
- AMerge sort sudah O(n)
- BMerge sort tidak memiliki struktur rekursif
- CDynamic programming hanya bekerja pada masalah graf, bukan pada array
- DSubmasalahnya tidak tumpang tindih, sehingga tidak ada yang dapat dipakai ulang
6.Sedang
Berapa kompleksitas waktu algoritma dynamic programming standar untuk longest common subsequence dari string dengan panjang m dan n?
- AO(mn log n)
- BO(mn)
- CO(m + n)
- DO(2m+n)
7.Sulit
Pernyataan mana tentang memilih elemen terkecil ke-k dari array tidak terurut yang benar?
- ASeleksi selalu memerlukan Ω(n log n) karena memerlukan pengurutan
- BSeleksi hanya mungkin dilakukan dalam O(n²)
- CQuickselect berjalan dalam O(n) yang diharapkan, dan median-of-medians menjamin O(n) pada kasus terburuk
- DQuickselect berjalan dalam O(log n) pada kasus terburuk, karena hanya berekursi ke satu sisi pivot
8.Sulit
Masalah knapsack 0/1 yang diselesaikan dengan pemrograman dinamis memerlukan waktu O(nW). Mengapa ini disebut pseudo-polinomial?
- AKarena algoritma ini hanya berlaku untuk W = 0
- BW adalah nilai numerik, sehingga waktunya eksponensial terhadap jumlah bit yang diperlukan untuk menuliskan W
- CKarena algoritmanya bersifat acak (randomised) dan waktu eksekusinya berbeda untuk setiap input
- DKarena n selalu kecil
Kunci jawaban
- 1. C · 6 detik
- 2. B · Waktu eksekusinya tidak bertambah seiring ukuran input
- 3. C · 4 detik
- 4. B · O(n)
- 5. D · Submasalahnya tidak tumpang tindih, sehingga tidak ada yang dapat dipakai ulang
- 6. B · O(mn)
- 7. C · Quickselect berjalan dalam O(n) yang diharapkan, dan median-of-medians menjamin O(n) pada kasus terburuk
- 8. B · W adalah nilai numerik, sehingga waktunya eksponensial terhadap jumlah bit yang diperlukan untuk menuliskan W
Penyelesaian lengkap langkah demi langkah: latih topik ini di examproblems.com.