1.Mudah
Berapa kompleksitas waktu kasus terburuk merge sort?
- AO(n)
- BO(n log n)
- CO(log n)
- DO(n²)
2.Mudah
Berapa kompleksitas waktu kasus terbaik insertion sort, pada array yang sudah terurut?
- AO(n²)
- BO(n log n)
- CO(n)
- DO(1)
3.Mudah
Apa yang dimaksud dengan memoisasi?
- AMenulis komentar di samping setiap baris kode
- BMembebaskan memori setelah fungsi selesai
- CMengubah rekursi menjadi loop yang setara secara otomatis sehingga call stack tidak diperlukan
- DMenyimpan hasil pemanggilan fungsi agar pemanggilan berulang dijawab dari memori
4.Sedang
Rekurens T(n) = T(n − 1) + O(n) menghasilkan apa?
- AO(n log n)
- BO(2ⁿ)
- CO(n²)
- DO(n)
5.Sedang
Relasi rekurens T(n) = 2T(n/2) + O(n) memiliki solusi:
- AO(n²)
- BO(n log n)
- CO(n)
- DO(log n)
6.Sedang
Berapa banyak tingkat rekursi merge sort untuk array berisi n elemen?
- ASekitar n
- BSekitar √n
- CSekitar n / 2
- DSekitar log₂ n
7.Sulit
Berapa waktu eksekusi algoritma Dijkstra dengan binary heap pada graf dengan V simpul dan E sisi?
- AO(V × E)
- BO(V³)
- CO((V + E) log V)
- DO(V + E)
8.Sulit
Insertion sort berjalan dalam O(n) pada input terurut. Apakah ini bertentangan dengan batas bawah Ω(n log n) untuk pengurutan berbasis perbandingan?
- ATidak, karena insertion sort bukan pengurutan berbasis perbandingan
- BTidak, batas bawah itu berlaku untuk kasus terburuk atas semua input, bukan untuk setiap input
- CYa, sehingga batas bawah itu salah
- DYa, tetapi hanya untuk array yang lebih pendek dari 100
Kunci jawaban
- 1. B · O(n log n)
- 2. C · O(n)
- 3. D · Menyimpan hasil pemanggilan fungsi agar pemanggilan berulang dijawab dari memori
- 4. C · O(n²)
- 5. B · O(n log n)
- 6. D · Sekitar log₂ n
- 7. C · O((V + E) log V)
- 8. B · Tidak, batas bawah itu berlaku untuk kasus terburuk atas semua input, bukan untuk setiap input
Penyelesaian lengkap langkah demi langkah: latih topik ini di examproblems.com.