1.ง่าย
ความซับซ้อนเชิงเวลาของการหาค่าที่มากที่สุดในอาร์เรย์ที่ไม่เรียงลำดับซึ่งมีตัวเลข n ตัวคือเท่าใด
- AO(1)
- BO(log n)
- CO(n)
- DO(n log n)
2.ง่าย
เวลาทำงานในกรณีเฉลี่ยอธิบายสิ่งใด
- Aเวลาบนคอมพิวเตอร์ที่พบบ่อยที่สุด
- Bเวลาคาดหมายภายใต้การแจกแจงของอินพุตขนาด n ที่กำหนด
- Cเวลาสำหรับอินพุตที่มีความยาวเฉลี่ย
- Dค่ากลางระหว่างเวลาทำงานในกรณีดีที่สุดกับกรณีเลวร้ายที่สุด
3.ง่าย
อัลกอริทึมกำลังเดรัจฉาน (brute force) คืออะไร
- Aอัลกอริทึมที่ทำงานบนหลายตัวประมวลผล
- Bอัลกอริทึมที่เดาคำตอบแบบสุ่ม
- Cอัลกอริทึมที่ลองคำตอบผู้สมัครที่เป็นไปได้ทั้งหมด
- Dอัลกอริทึมที่ใช้การเรียกซ้ำเสมอ
4.ปานกลาง
ความสัมพันธ์เวียนเกิด T(n) = 2T(n/2) + O(n) มีผลเฉลยเป็น
- AO(n²)
- BO(log n)
- CO(n)
- DO(n log n)
5.ปานกลาง
อัลกอริทึมการเรียงลำดับใดเป็นแบบเสถียร (stable)
- AHeap sort
- BMerge sort
- CSelection sort (แบบทั่วไป)
- DQuicksort (แบบทำในที่เดิมทั่วไป)
6.ปานกลาง
ข้อใดเกี่ยวกับฟังก์ชันเรียกซ้ำที่ไม่มีกรณีฐานที่ไปถึงได้ถูกต้อง
- Aคืนค่า 0 โดยอัตโนมัติ
- Bคอมไพเลอร์แปลงเป็นลูปที่จบอย่างปลอดภัยเสมอ
- Cทำงานในเวลา O(1)
- Dเรียกตัวเองต่อไปจนสแต็กการเรียกล้น
7.ยาก
เพื่อแสดงว่าปัญหาใหม่ X เป็น NP-hard คุณต้องทำอะไร
- Aแสดงว่า X ตรวจสอบได้ในเวลาพหุนาม
- Bแสดงว่า X ไม่มีอัลกอริทึมพหุนามสำหรับอินพุตเล็ก
- Cลดรูปปัญหา NP-hard ที่ทราบมาเป็น X ในเวลาพหุนาม
- Dลดรูป X ไปเป็นปัญหา NP-hard ที่ทราบในเวลาพหุนาม
8.ยาก
การเลือกปลายทั้งสองของทุกเส้นเชื่อมใน maximal matching ให้ผลเป็นเซตครอบคลุมจุดยอด (vertex cover) เซตครอบคลุมนี้ดีเพียงใด
- Aไม่ทราบคุณภาพเมื่อเทียบกับค่าที่เหมาะสมที่สุด
- Bไม่เกิน log n เท่าของค่าต่ำสุด
- Cขนาดไม่เกินสองเท่าของเซตครอบคลุมจุดยอดที่เล็กที่สุด
- Dเป็นเซตครอบคลุมจุดยอดที่เล็กที่สุดเสมอ
เฉลย
- 1. C · O(n)
- 2. B · เวลาคาดหมายภายใต้การแจกแจงของอินพุตขนาด n ที่กำหนด
- 3. C · อัลกอริทึมที่ลองคำตอบผู้สมัครที่เป็นไปได้ทั้งหมด
- 4. D · O(n log n)
- 5. B · Merge sort
- 6. D · เรียกตัวเองต่อไปจนสแต็กการเรียกล้น
- 7. C · ลดรูปปัญหา NP-hard ที่ทราบมาเป็น X ในเวลาพหุนาม
- 8. C · ขนาดไม่เกินสองเท่าของเซตครอบคลุมจุดยอดที่เล็กที่สุด
เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com