1.ง่าย
การดำเนินการของคิวที่เอาสมาชิกด้านหน้าออกเรียกว่าอะไร
- AInsert
- BDequeue
- CEnqueue
- DPush
2.ง่าย
กราฟมีน้ำหนัก (weighted graph) คืออะไร
- Aกราฟที่เก็บบนดิสก์
- Bกราฟที่จุดยอดบางจุดหนักกว่าจุดอื่นเพราะมีเส้นเชื่อมมากกว่า
- Cกราฟที่แต่ละเส้นเชื่อมมีค่าตัวเลข เช่น ต้นทุนหรือระยะทาง
- Dกราฟที่มีเส้นเชื่อมมากกว่าจุดยอด
3.ง่าย
อะไรคือนิยามของต้นไม้ทวิภาค (binary tree)
- Aทุกโหนดมีลูกสองตัวพอดี
- Bทุกโหนดมีลูกไม่เกินสองตัว
- Cทุกโหนดเก็บเลขฐานสอง
- Dต้นไม้มีสองระดับพอดี
4.ปานกลาง
จุดประสงค์ของโหนดยามเฝ้า (sentinel หรือ dummy) ในลิงก์ลิสต์คืออะไร
- Aเพื่อป้องกันไม่ให้ลิสต์ขยายเกินจำนวนโหนดสูงสุดที่กำหนดไว้
- Bทำให้ลิสต์เรียงลำดับ
- Cเก็บจำนวนสมาชิก
- Dทำให้โค้ดง่ายขึ้นโดยตัดกรณีพิเศษที่หัวหรือท้าย
5.ปานกลาง
วิธีแก้การชนกันแบบใดเก็บคีย์ที่ชนกันไว้ในลิสต์ที่ถังเดียวกัน
- Aการแฮชซ้อน (double hashing)
- Bการเชื่อมโซ่แยก (separate chaining)
- Cการตรวจสอบกำลังสอง (quadratic probing)
- Dการตรวจสอบเชิงเส้น (linear probing)
6.ปานกลาง
ตารางแฮชขนาด 7 ใช้ h(k) = k mod 7 และ linear probing หลังแทรก 10 แล้ว 17 ถูกเก็บที่ใด
- Aดัชนี 6
- Bดัชนี 3
- Cดัชนี 4
- Dดัชนี 0
7.ยาก
ในตารางแฮชที่ใช้ open addressing เหตุใดการลบจึงมักทำด้วยเครื่องหมาย "tombstone"
- Aการทำให้ช่องว่างอาจทำลายลำดับการตรวจสอบสำหรับคีย์อื่น
- Btombstone เร่งการแฮช
- Cคีย์ที่ลบต้องเก็บไว้ตลอดไปเพื่อความปลอดภัย จึงใช้ช่องนั้นซ้ำไม่ได้
- Dทำให้ตารางเรียงลำดับ
8.ยาก
คุณต้องเก็บค่าที่น้อยที่สุด k ตัวจากสตรีมของตัวเลข n ตัวโดยใช้หน่วยความจำ O(k) แนวทางใดทำงานใน O(n log k)
- Aคิว FIFO ของ k ค่าล่าสุด
- Bmax-heap ขนาด k โดยแทนที่รากเมื่อมีค่าที่เล็กกว่ามา
- Cmin-heap ที่เก็บค่าทั้ง n ตัว แล้วดึงค่าที่น้อยที่สุด k ตัวออกมาตอนท้าย
- Dอาร์เรย์เรียงลำดับของค่าทั้ง n
เฉลย
- 1. B · Dequeue
- 2. C · กราฟที่แต่ละเส้นเชื่อมมีค่าตัวเลข เช่น ต้นทุนหรือระยะทาง
- 3. B · ทุกโหนดมีลูกไม่เกินสองตัว
- 4. D · ทำให้โค้ดง่ายขึ้นโดยตัดกรณีพิเศษที่หัวหรือท้าย
- 5. B · การเชื่อมโซ่แยก (separate chaining)
- 6. C · ดัชนี 4
- 7. A · การทำให้ช่องว่างอาจทำลายลำดับการตรวจสอบสำหรับคีย์อื่น
- 8. B · max-heap ขนาด k โดยแทนที่รากเมื่อมีค่าที่เล็กกว่ามา
เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com