1.ง่าย
อัลกอริทึมที่มีลูปซ้อนกันสองชั้น แต่ละชั้นทำงาน n รอบ โดยทั่วไปมีความซับซ้อนเท่าใด
- AO(n²)
- BO(2n)
- CO(log n)
- DO(n)
2.ง่าย
อัลกอริทึม O(n) ใช้เวลา 3 วินาทีเมื่อ n = 1 ล้าน เมื่อ n = 2 ล้านจะใช้เวลาประมาณเท่าใด
- A12 วินาที
- B9 วินาที
- C3 วินาที
- D6 วินาที
3.ง่าย
อัลกอริทึมคืออะไร
- Aโครงสร้างข้อมูลที่เก็บตัวเลข
- Bโปรแกรมคอมพิวเตอร์ใด ๆ ที่มีส่วนต่อประสานกราฟิก
- Cลำดับขั้นตอนจำกัดที่นิยามชัดเจนซึ่งแก้ปัญหาหนึ่ง
- Dภาษาโปรแกรมที่ออกแบบมาสำหรับเขียนสูตรทางคณิตศาสตร์
4.ปานกลาง
เหตุใดจึงมักละฐานของลอการิทึมใน Big O เช่น O(log n)
- Aลอการิทึมทั้งหมดในวิทยาการคอมพิวเตอร์มีฐาน 10 จึงไม่ต้องระบุ
- Bลอการิทึมที่ฐานต่างกันต่างกันเพียงตัวคูณคงที่
- Cลอการิทึมถูกปัดเป็นจำนวนเต็มเสมอ
- Dฐานมีความสำคัญเฉพาะเมื่อ n น้อย
5.ปานกลาง
ขอบเขตล่างของการเรียงลำดับแบบเปรียบเทียบในกรณีเลวร้ายที่สุดคือ
- AΩ(n²)
- BΩ(n log n)
- CΩ(log n)
- DΩ(n)
6.ปานกลาง
การค้นหาแบบทวิภาคต้องเปรียบเทียบประมาณกี่ครั้งในกรณีเลวร้ายที่สุดบนอาร์เรย์ที่เรียงแล้วซึ่งมี 1,000,000 สมาชิก
- Aประมาณ 20
- Bประมาณ 1,000
- Cประมาณ 100
- Dประมาณ 500,000
7.ยาก
ข้อใดเกี่ยวกับสัญกรณ์ little-o ถูกต้อง
- An = o(n) เพราะทุกฟังก์ชันเป็น little-o ของตัวมันเอง
- B2n = o(n) เพราะ 2n เติบโตช้า
- Cn = o(n²) แต่ n ไม่ใช่ o(n)
- Dn² = o(n)
8.ยาก
22n อยู่ใน O(2ⁿ) หรือไม่
- Aไม่ เพราะ 22n = 4ⁿ และ 4ⁿ / 2ⁿ = 2ⁿ เติบโตไม่มีขอบเขต
- Bใช่ เพราะตัวคูณคงที่ในเลขชี้กำลังถูกละไว้เสมอใน Big O
- Cไม่ เพราะ 22n เติบโตช้ากว่า 2ⁿ
- Dใช่ เพราะทั้งสองเป็นเอกซ์โพเนนเชียล
เฉลย
- 1. A · O(n²)
- 2. D · 6 วินาที
- 3. C · ลำดับขั้นตอนจำกัดที่นิยามชัดเจนซึ่งแก้ปัญหาหนึ่ง
- 4. B · ลอการิทึมที่ฐานต่างกันต่างกันเพียงตัวคูณคงที่
- 5. B · Ω(n log n)
- 6. A · ประมาณ 20
- 7. C · n = o(n²) แต่ n ไม่ใช่ o(n)
- 8. A · ไม่ เพราะ 22n = 4ⁿ และ 4ⁿ / 2ⁿ = 2ⁿ เติบโตไม่มีขอบเขต
เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com