1.ง่าย
สมาชิกของอาร์เรย์ถูกเก็บในหน่วยความจำอย่างไร
- Aในตำแหน่งสุ่มที่เลือกด้วยแฮช
- Bกระจัดกระจาย เชื่อมด้วยตัวชี้
- Cในต้นไม้ของหน้าหน่วยความจำ
- Dในบล็อกต่อเนื่องเดียว ต่อกันทีละตัว
2.ง่าย
ในต้นไม้ค้นหาแบบทวิภาค (binary search tree) ค่าในต้นไม้ย่อยซ้ายของโหนดมีค่า
- Aเท่ากับค่าของโหนด
- Bน้อยกว่าค่าของโหนด
- Cมากกว่าค่าของโหนด
- Dเรียงลำดับแบบสุ่ม
3.ง่าย
ในการแทนกราฟด้วยรายการประชิด (adjacency list) เก็บอะไรสำหรับแต่ละจุดยอด
- Aจำนวนเส้นเชื่อมทั้งหมดในกราฟ
- Bรายการของจุดยอดข้างเคียง
- Cเส้นทางสั้นที่สุดไปยังทุกจุดยอดอื่น
- Dแถวของค่าบูลีน V ค่า
4.ปานกลาง
สมาชิกใหม่ถูกแทรกลงในฮีปทวิภาคอย่างไร
- Aวางที่รากและเลื่อนลง
- Bสร้างฮีปใหม่ทั้งหมดตั้งแต่ต้น
- Cแทรกที่ตำแหน่งตามลำดับโดยเลื่อนสมาชิกที่ใหญ่กว่าทั้งหมดไปทางขวาหนึ่งตำแหน่ง
- Dวางที่ท้ายอาร์เรย์และเลื่อนขึ้น (sift up) ตราบที่ยังละเมิดคุณสมบัติฮีป
5.ปานกลาง
โครงสร้างข้อมูลใดใช้ตรวจว่าวงเล็บใน "{[()]}" สมดุลหรือไม่
- Abinary search tree
- Bสแตก
- Cตารางแฮช
- Dคิว
6.ปานกลาง
ความซับซ้อนเชิงเวลาของการค้นหาคีย์ใน binary search tree ที่สมดุลคือเท่าใด
- AO(n log n)
- BO(1)
- CO(n)
- DO(log n)
7.ยาก
เวลาทำงานของการค้นหาในแนวกว้างบนกราฟที่มี V จุดยอดที่เก็บเป็นเมทริกซ์ประชิดคือเท่าใด
- AO(V)
- BO(E log V)
- CO(V + E)
- DO(V²)
8.ยาก
เพื่อให้ตารางแฮชทำงานถูกต้อง แฮชและความเท่ากันต้องเป็นไปตามกฎใด
- Aคีย์ที่เท่ากันต้องมีค่าแฮชเท่ากัน
- Bคีย์ที่ต่างกันต้องมีค่าแฮชต่างกัน
- Cค่าแฮชต้องเป็นจำนวนเฉพาะ
- Dค่าแฮชที่เท่ากันหมายถึงคีย์เท่ากัน
เฉลย
- 1. D · ในบล็อกต่อเนื่องเดียว ต่อกันทีละตัว
- 2. B · น้อยกว่าค่าของโหนด
- 3. B · รายการของจุดยอดข้างเคียง
- 4. D · วางที่ท้ายอาร์เรย์และเลื่อนขึ้น (sift up) ตราบที่ยังละเมิดคุณสมบัติฮีป
- 5. B · สแตก
- 6. D · O(log n)
- 7. D · O(V²)
- 8. A · คีย์ที่เท่ากันต้องมีค่าแฮชเท่ากัน
เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com