1.ง่าย
merge sort แบบมาตรฐานที่ใช้อาร์เรย์ใช้หน่วยความจำเพิ่มเติมเท่าใด
- AO(n²)
- BO(log n)
- CO(1)
- DO(n)
2.ง่าย
ลูปเริ่มที่ i = 1 และเพิ่ม i เป็นสองเท่าทุกรอบจนกระทั่ง i > n ลูปนี้ทำงานกี่รอบ
- Aประมาณ log₂ n
- Bประมาณ n²
- Cประมาณ n / 2
- Dประมาณ n
3.ง่าย
การเติบโตแบบ O(2ⁿ) เรียกว่าอะไร
- Aเอกซ์โพเนนเชียล
- Bเชิงเส้น
- Cลอการิทึม
- Dพหุนาม
4.ปานกลาง
อัลกอริทึมใดหาเส้นทางสั้นที่สุดจากต้นทางหนึ่งในกราฟที่น้ำหนักเส้นเชื่อมไม่เป็นลบ
- Aการค้นหาในแนวลึก
- Bอัลกอริทึมของ Kruskal
- Cต้องใช้ Bellman–Ford ในทุกกรณี
- Dอัลกอริทึมของ Dijkstra
5.ปานกลาง
คุณเรียงอาร์เรย์ n สมาชิกหนึ่งครั้ง แล้วตอบคำถามการเป็นสมาชิก k ข้อด้วยการค้นหาแบบทวิภาค ต้นทุนรวมเท่าใด
- AO(k n log n)
- BO(n log n + k log n)
- CO(nk)
- DO(n + k)
6.ปานกลาง
การค้นหาแบบทวิภาคต้องเปรียบเทียบประมาณกี่ครั้งในกรณีเลวร้ายที่สุดบนอาร์เรย์ที่เรียงแล้วซึ่งมี 1,000,000 สมาชิก
- Aประมาณ 500,000
- Bประมาณ 100
- Cประมาณ 1,000
- Dประมาณ 20
7.ยาก
เหตุใดการค้นหาแบบทวิภาคจึงไม่ให้เวลา O(log n) บนรายการเชื่อมโยงเดี่ยว
- Aการค้นหาแบบทวิภาคต้องใช้หน่วยความจำอย่างน้อยสองเท่า
- Bการไปถึงสมาชิกตรงกลางใช้ O(n) ขั้นตอน เพราะเข้าถึงด้วยดัชนีโดยตรงไม่ได้
- Cรายการเชื่อมโยงเรียงลำดับไม่ได้
- Dการเปรียบเทียบบนโหนดของรายการเชื่อมโยงช้ากว่า
8.ยาก
ทฤษฎีบท Cook–Levin พิสูจน์สิ่งใด
- Aปัญหาการหยุดตัดสินไม่ได้
- BP ไม่เท่ากับ NP
- Cปัญหาความสอดคล้องของสูตรบูลีน (SAT) เป็น NP-complete
- Dทุกปัญหา NP แก้ได้ในเวลาเอกซ์โพเนนเชียล
เฉลย
- 1. D · O(n)
- 2. A · ประมาณ log₂ n
- 3. A · เอกซ์โพเนนเชียล
- 4. D · อัลกอริทึมของ Dijkstra
- 5. B · O(n log n + k log n)
- 6. D · ประมาณ 20
- 7. B · การไปถึงสมาชิกตรงกลางใช้ O(n) ขั้นตอน เพราะเข้าถึงด้วยดัชนีโดยตรงไม่ได้
- 8. C · ปัญหาความสอดคล้องของสูตรบูลีน (SAT) เป็น NP-complete
เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com