1.Mudah
Apakah tiga langkah algoritma bahagi dan takluk?
- ATeka, semak, ulang
- BBaca, kira, tulis
- CIsih, cari, kembali
- DBahagi, takluk, gabung
2.Mudah
Strategi reka bentuk manakah yang digunakan oleh isihan cantum?
- ABahagi dan takluk
- BPilihan tamak
- CKekerasan (brute force)
- DPengaturcaraan dinamik
3.Mudah
Apakah kerumitan masa kes terburuk isihan sisipan?
- AO(n)
- BO(log n)
- CO(n log n)
- DO(n²)
4.Sederhana
Apakah penyelesaian hubungan jadi semula T(n) = T(n − 1) + O(1)?
- AO(n)
- BO(n²)
- CO(log n)
- DO(2ⁿ)
5.Sederhana
Betulkah untuk mengatakan bahawa algoritma O(n²) juga O(n³)?
- ATidak, kerana Big O mesti sentiasa menyatakan kadar pertumbuhan yang tepat bagi fungsi itu
- BYa, kerana Big O ialah batas atas dan n² tumbuh tidak lebih pantas daripada n³
- CTidak, kerana n³ lebih kecil daripada n² untuk n yang besar
- DYa, tetapi hanya jika n kurang daripada 100
6.Sederhana
Apakah kerumitan masa algoritma Bellman–Ford pada graf dengan V bucu dan E sisi?
- AO(V³ × E)
- BO(V × E)
- CO(V + E)
- DO(E log V)
7.Sukar
Pernyataan manakah tentang notasi o kecil yang betul?
- An = o(n), kerana setiap fungsi ialah o kecil bagi dirinya sendiri
- Bn = o(n²), tetapi n bukan o(n)
- Cn² = o(n)
- D2n = o(n), kerana 2n tumbuh perlahan
8.Sukar
Masalah penghentian (halting problem) menunjukkan bahawa:
- ATiada algoritma yang dapat memutuskan bagi setiap program dan input sama ada ia berhenti
- BSesetengah program berjalan lebih pantas pada komputer yang lebih pantas, jadi penghentian bergantung pada perkakasan
- CSetiap program akhirnya berhenti
- DGelung harus dielakkan
Kunci jawapan
- 1. D · Bahagi, takluk, gabung
- 2. A · Bahagi dan takluk
- 3. D · O(n²)
- 4. A · O(n)
- 5. B · Ya, kerana Big O ialah batas atas dan n² tumbuh tidak lebih pantas daripada n³
- 6. B · O(V × E)
- 7. B · n = o(n²), tetapi n bukan o(n)
- 8. A · Tiada algoritma yang dapat memutuskan bagi setiap program dan input sama ada ia berhenti
Penyelesaian langkah demi langkah yang lengkap: berlatih topik ini di examproblems.com.