1.ง่าย
ในกราฟไม่มีทิศทาง ดีกรี (degree) ของจุดยอดคืออะไร
- Aจำนวนจุดยอดในกราฟ
- Bตำแหน่งของมันในรายการประชิด
- Cความยาวของเส้นทางที่ยาวที่สุดจากมัน
- Dจำนวนเส้นเชื่อมที่ต่ออยู่กับมัน
2.ง่าย
การดำเนินการใดเป็น O(1) สำหรับอาร์เรย์แต่เป็น O(n) สำหรับลิงก์ลิสต์เชิงเดี่ยว
- Aการลบสมาชิกหัว
- Bการอ่านสมาชิกตัวแรก
- Cการแทรกที่หัว
- Dการเข้าถึงสมาชิกที่ดัชนี i
3.ง่าย
deque (double-ended queue) คืออะไร
- Aคิวที่อนุญาตให้เอาออกจากด้านหลังเท่านั้น
- Bคิวสองคิวที่ใช้อาร์เรย์ร่วมกัน
- Cโครงสร้างที่อนุญาตให้แทรกและเอาออกที่ทั้งสองปลาย
- Dคิวที่เรียงตามลำดับความสำคัญ
4.ปานกลาง
เหตุใดการท่องอาร์เรย์จึงเร็วกว่าการท่องลิงก์ลิสต์ที่ยาวเท่ากันมากในทางปฏิบัติ
- Aลิงก์ลิสต์เก็บสมาชิกบนดิสก์เสมอ
- Bการท่องอาร์เรย์เป็น O(1) โดยรวม ส่วนการท่องลิงก์ลิสต์เป็น O(n)
- Cอาร์เรย์ใช้คำสั่งน้อยกว่าในการเปรียบเทียบค่า
- Dสมาชิกของอาร์เรย์ต่อเนื่องกัน จึงใช้แคชของ CPU ได้ดี
5.ปานกลาง
ข้อใดเป็นจริงเกี่ยวกับเมทริกซ์ประชิดของกราฟไม่มีทิศทาง
- Aเป็นเมทริกซ์สามเหลี่ยมบนเสมอ
- Bเส้นทแยงมุมหลักมีเลขหนึ่งเสมอ
- Cแต่ละแถวมี 1 เพียงตัวเดียวพอดี
- Dสมมาตรเทียบกับเส้นทแยงมุมหลัก
6.ปานกลาง
การตรวจว่ามีเส้นเชื่อม (u, v) หรือไม่ด้วยเมทริกซ์ประชิดใช้เวลาเท่าใด
- AO(1)
- BO(E)
- CO(V)
- DO(log V)
7.ยาก
ภายใต้การแฮชสม่ำเสมออย่างง่าย เวลาคาดหมายของการค้นหาในตารางแฮชแบบ chaining ที่มี n คีย์และ m ถังคือเท่าใด
- AO(n)
- BO(m)
- CO(1 + α) เมื่อ α = n / m
- DO(log n)
8.ยาก
การค้นหาคีย์ใด ๆ ในฮีป min ทวิภาคที่มี n สมาชิกใช้เวลาเท่าใด
- AO(log n)
- BO(log log n)
- CO(1)
- DO(n)
เฉลย
- 1. D · จำนวนเส้นเชื่อมที่ต่ออยู่กับมัน
- 2. D · การเข้าถึงสมาชิกที่ดัชนี i
- 3. C · โครงสร้างที่อนุญาตให้แทรกและเอาออกที่ทั้งสองปลาย
- 4. D · สมาชิกของอาร์เรย์ต่อเนื่องกัน จึงใช้แคชของ CPU ได้ดี
- 5. D · สมมาตรเทียบกับเส้นทแยงมุมหลัก
- 6. A · O(1)
- 7. C · O(1 + α) เมื่อ α = n / m
- 8. D · O(n)
เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com