1.Mudah
Berapa kompleksitas waktu kasus terburuk insertion sort?
- AO(n log n)
- BO(n)
- CO(log n)
- DO(n²)
2.Mudah
Berapa Big O dari 3n² + 5n + 2?
- AO(n²)
- BO(5n)
- CO(n³)
- DO(3n²)
3.Mudah
Pertumbuhan O(2ⁿ) disebut apa?
- ALinear
- BPolinomial
- CEksponensial
- DLogaritmik
4.Sedang
Berapa kompleksitas waktu teramortisasi (amortised) untuk menambahkan elemen ke array dinamis yang menggandakan kapasitasnya ketika penuh?
- AO(n)
- BO(1)
- CO(log n)
- DO(n²)
5.Sedang
Apa yang diukur oleh analisis amortisasi?
- ABiaya rata-rata per operasi atas urutan operasi kasus terburuk
- BBiaya algoritma pada input terbaik
- CBiaya yang diharapkan atas input acak
- DBiaya satu operasi yang paling mahal di mana pun dalam urutan itu
6.Sedang
Pemrograman dinamis (dynamic programming) berguna ketika suatu masalah memiliki:
- ASubmasalah yang tumpang tindih dan substruktur optimal
- BSatu loop saja
- CHanya input acak
- DTidak ada submasalah sama sekali, sehingga dapat diselesaikan dalam satu langkah
7.Sulit
Masalah knapsack 0/1 yang diselesaikan dengan pemrograman dinamis memerlukan waktu O(nW). Mengapa ini disebut pseudo-polinomial?
- AKarena algoritmanya bersifat acak (randomised) dan waktu eksekusinya berbeda untuk setiap input
- BKarena n selalu kecil
- CKarena algoritma ini hanya berlaku untuk W = 0
- DW adalah nilai numerik, sehingga waktunya eksponensial terhadap jumlah bit yang diperlukan untuk menuliskan W
8.Sulit
Berapa kompleksitas waktu dari: for i = 1 to n: for (j = i; j ≤ n; j = j + i) lakukan kerja O(1)?
- AO(n)
- BO(n²)
- CO(n log n)
- DO(n √n)
Kunci jawaban
- 1. D · O(n²)
- 2. A · O(n²)
- 3. C · Eksponensial
- 4. B · O(1)
- 5. A · Biaya rata-rata per operasi atas urutan operasi kasus terburuk
- 6. A · Submasalah yang tumpang tindih dan substruktur optimal
- 7. D · W adalah nilai numerik, sehingga waktunya eksponensial terhadap jumlah bit yang diperlukan untuk menuliskan W
- 8. C · O(n log n)
Penyelesaian lengkap langkah demi langkah: latih topik ini di examproblems.com.