1.ง่าย
โครงสร้างข้อมูลใดทำงานตามหลักการ "เข้าก่อนออกก่อน" (first in, first out)
- Aต้นไม้ทวิภาค (binary tree)
- Bฮีป (heap)
- Cสแตก (stack)
- Dคิว (queue)
2.ง่าย
ลักษณะเด่นของเซต (set) ในฐานะชนิดข้อมูลนามธรรมคืออะไร
- Aเก็บสมาชิกโดยไม่มีซ้ำ
- Bเข้าถึงได้เฉพาะที่ปลายด้านเดียว
- Cเก็บคู่คีย์–ค่า
- Dเก็บสมาชิกเรียงลำดับ
3.ง่าย
ในต้นไม้ โหนดพี่น้อง (sibling) คืออะไร
- Aโหนดที่ระดับความลึกเดียวกันในต้นไม้ย่อยต่างกัน
- Bโหนดที่ไม่มีลูก
- Cโหนดที่มีแม่เดียวกัน
- Dโหนดและแม่ของมัน
4.ปานกลาง
แอปพลิเคชันต้องการค้นหาเร็ว และต้องแสดงรายการคีย์เรียงลำดับและตอบคำถามช่วง โครงสร้างใดเหมาะที่สุด
- Abinary search tree แบบสมดุล
- Bสแตก
- Cลิงก์ลิสต์ที่ไม่เรียงลำดับ
- Dตารางแฮช
5.ปานกลาง
extract-min ใน min-heap ทวิภาคทำงานอย่างไร
- Aค้นหาใบทั้งหมดเพื่อหาค่าต่ำสุดใหม่
- Bลบรากและเลื่อนสมาชิกทั้งหมดไปทางซ้ายหนึ่งตำแหน่ง
- Cย้ายสมาชิกสุดท้ายไปที่รากและเลื่อนลง (sift down)
- Dลบสมาชิกสุดท้ายของอาร์เรย์
6.ปานกลาง
สมาชิกใหม่ถูกแทรกลงในฮีปทวิภาคอย่างไร
- Aแทรกที่ตำแหน่งตามลำดับโดยเลื่อนสมาชิกที่ใหญ่กว่าทั้งหมดไปทางขวาหนึ่งตำแหน่ง
- Bวางที่รากและเลื่อนลง
- Cสร้างฮีปใหม่ทั้งหมดตั้งแต่ต้น
- Dวางที่ท้ายอาร์เรย์และเลื่อนขึ้น (sift up) ตราบที่ยังละเมิดคุณสมบัติฮีป
7.ยาก
วัตถุถูกเก็บเป็นคีย์ใน hash map จากนั้นฟิลด์ที่ฟังก์ชันแฮชใช้ถูกเปลี่ยน ผลลัพธ์ที่น่าจะเกิดคืออะไร
- Aการค้นหาวัตถุอาจล้มเหลว เพราะมันอยู่ในถังของแฮชเก่า
- Bไม่มีอะไรเปลี่ยน เพราะแฮชของคีย์คำนวณเพียงครั้งเดียวตอนโปรแกรมเริ่มทำงาน
- Cmap ย้ายคีย์ไปถังใหม่โดยอัตโนมัติ
- Dmap โยนข้อผิดพลาดทันทีที่ฟิลด์เปลี่ยน
8.ยาก
ภายใต้การแฮชสม่ำเสมออย่างง่าย เวลาคาดหมายของการค้นหาในตารางแฮชแบบ chaining ที่มี n คีย์และ m ถังคือเท่าใด
- AO(n)
- BO(log n)
- CO(1 + α) เมื่อ α = n / m
- DO(m)
เฉลย
- 1. D · คิว (queue)
- 2. A · เก็บสมาชิกโดยไม่มีซ้ำ
- 3. C · โหนดที่มีแม่เดียวกัน
- 4. A · binary search tree แบบสมดุล
- 5. C · ย้ายสมาชิกสุดท้ายไปที่รากและเลื่อนลง (sift down)
- 6. D · วางที่ท้ายอาร์เรย์และเลื่อนขึ้น (sift up) ตราบที่ยังละเมิดคุณสมบัติฮีป
- 7. A · การค้นหาวัตถุอาจล้มเหลว เพราะมันอยู่ในถังของแฮชเก่า
- 8. C · O(1 + α) เมื่อ α = n / m
เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com