1.ง่าย
อัลกอริทึม O(n²) ใช้เวลา 1 วินาทีเมื่อ n = 1000 เมื่อ n = 2000 จะใช้เวลาประมาณเท่าใด
- A2 วินาที
- B4 วินาที
- C1 วินาที
- D8 วินาที
2.ง่าย
สัญกรณ์ใดใช้อธิบายขอบเขตบนของอัตราการเติบโต
- ALittle omega
- BBig Omega
- CBig Theta
- DBig O
3.ง่าย
การเติบโตแบบ O(2ⁿ) เรียกว่าอะไร
- Aเชิงเส้น
- Bพหุนาม
- Cลอการิทึม
- Dเอกซ์โพเนนเชียล
4.ปานกลาง
quicksort ใช้สมาชิกตัวแรกเป็นตัวหลักเสมอ อินพุตแบบใดแสดงพฤติกรรมกรณีเลวร้ายที่สุดของมัน
- Aอาร์เรย์ที่เรียงแบบสุ่ม
- Bอาร์เรย์ที่สมาชิกทุกตัวต่างกัน
- Cอาร์เรย์ความยาว 2
- Dอาร์เรย์ที่เรียงลำดับแล้ว
5.ปานกลาง
เหตุใดรูทีนการเรียงลำดับในไลบรารีจำนวนมากจึงเปลี่ยนไปใช้ insertion sort กับอาร์เรย์ย่อยที่เล็กมาก
- AInsertion sort เป็น O(n log n) ในกรณีเลวร้ายที่สุด
- BInsertion sort มีภาระเพิ่มน้อยและเร็วกับอินพุตที่เล็กหรือเกือบเรียงแล้ว
- CInsertion sort ใช้หน่วยความจำน้อยกว่าอัลกอริทึมการเรียงลำดับอื่นทุกตัวกับอินพุตใหญ่
- Dอัลกอริทึมแบบเรียกซ้ำจัดการอาร์เรย์ที่เล็กกว่า 10 สมาชิกไม่ได้
6.ปานกลาง
ความซับซ้อนเชิงเวลาของการคำนวณจำนวนฟีโบนักชีตัวที่ n ด้วยตารางแบบล่างขึ้นบนคือเท่าใด
- AO(n²)
- BO(2ⁿ)
- CO(n)
- DO(log n)
7.ยาก
ปัญหาหนึ่งเป็น NP-complete ถ้ามัน
- Aอยู่นอก NP แต่ยากกว่าทุกปัญหา NP เช่น ปัญหาการหยุด
- Bแก้ได้ในเวลาพหุนาม
- Cแก้ไม่ได้เลย
- Dอยู่ใน NP และทุกปัญหา NP ลดรูปมาเป็นมันได้ในเวลาพหุนาม
8.ยาก
การเลือกปลายทั้งสองของทุกเส้นเชื่อมใน maximal matching ให้ผลเป็นเซตครอบคลุมจุดยอด (vertex cover) เซตครอบคลุมนี้ดีเพียงใด
- Aเป็นเซตครอบคลุมจุดยอดที่เล็กที่สุดเสมอ
- Bไม่เกิน log n เท่าของค่าต่ำสุด
- Cขนาดไม่เกินสองเท่าของเซตครอบคลุมจุดยอดที่เล็กที่สุด
- Dไม่ทราบคุณภาพเมื่อเทียบกับค่าที่เหมาะสมที่สุด
เฉลย
- 1. B · 4 วินาที
- 2. D · Big O
- 3. D · เอกซ์โพเนนเชียล
- 4. D · อาร์เรย์ที่เรียงลำดับแล้ว
- 5. B · Insertion sort มีภาระเพิ่มน้อยและเร็วกับอินพุตที่เล็กหรือเกือบเรียงแล้ว
- 6. C · O(n)
- 7. D · อยู่ใน NP และทุกปัญหา NP ลดรูปมาเป็นมันได้ในเวลาพหุนาม
- 8. C · ขนาดไม่เกินสองเท่าของเซตครอบคลุมจุดยอดที่เล็กที่สุด
เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com