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