1.Mudah
Apakah Big O bagi 3n² + 5n + 2?
- AO(3n²)
- BO(n³)
- CO(5n)
- DO(n²)
2.Mudah
Apakah maksudnya jika sesuatu operasi berjalan dalam masa O(1)?
- AIa memproses tepat satu elemen bagi setiap saat masa larian
- BMasa larinya tidak bertambah dengan saiz input
- CIa hanya boleh dijalankan sekali
- DIa sentiasa mengambil tepat satu saat
3.Mudah
Mengakses elemen mengikut indeks dalam tatasusunan mengambil masa:
- AO(log n)
- BO(n²)
- CO(1)
- DO(n)
4.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
- BTidak, kerana n³ lebih kecil daripada n² untuk n yang besar
- CYa, tetapi hanya jika n kurang daripada 100
- DYa, kerana Big O ialah batas atas dan n² tumbuh tidak lebih pantas daripada n³
5.Sederhana
Apakah kerumitan masa bagi: for i = 1 to n: for j = 1 to i: lakukan kerja O(1)?
- AO(n log n)
- BO(n)
- CO(n²)
- DO(n³)
6.Sederhana
Bagaimanakah algoritma Prim membina pokok rentang minimum?
- AIa menjalankan carian pertama lebar dan mengekalkan pokok BFS
- BIa menumbuhkan satu pokok dari bucu permulaan, dengan menambah sisi termurah yang meninggalkan pokok
- CIa membuang sisi paling mahal sehingga tiada kitaran tinggal
- DIa mengisih semua sisi mengikut pemberat dan menambah setiap satu kecuali jika ia membentuk kitaran dalam hutan
7.Sukar
Masalah penghentian (halting problem) menunjukkan bahawa:
- ASetiap program akhirnya berhenti
- BTiada algoritma yang dapat memutuskan bagi setiap program dan input sama ada ia berhenti
- CSesetengah program berjalan lebih pantas pada komputer yang lebih pantas, jadi penghentian bergantung pada perkakasan
- DGelung harus dielakkan
8.Sukar
Mengambil kedua-dua hujung setiap sisi dalam padanan maksimal memberikan litupan bucu. Sebaik manakah litupan ini?
- AMutunya tidak diketahui berbanding optimum
- BPaling banyak log n kali minimum
- CSentiasa litupan bucu minimum
- DPaling banyak dua kali ganda saiz litupan bucu minimum
Kunci jawapan
- 1. D · O(n²)
- 2. B · Masa larinya tidak bertambah dengan saiz input
- 3. C · O(1)
- 4. D · Ya, kerana Big O ialah batas atas dan n² tumbuh tidak lebih pantas daripada n³
- 5. C · O(n²)
- 6. B · Ia menumbuhkan satu pokok dari bucu permulaan, dengan menambah sisi termurah yang meninggalkan pokok
- 7. B · Tiada algoritma yang dapat memutuskan bagi setiap program dan input sama ada ia berhenti
- 8. D · Paling banyak dua kali ganda saiz litupan bucu minimum
Penyelesaian langkah demi langkah yang lengkap: berlatih topik ini di examproblems.com.