1.ง่าย
ในลิงก์ลิสต์เชิงเดี่ยว (singly linked list) แต่ละโหนดประกอบด้วย
- Aข้อมูลและการอ้างอิงไปยังโหนดอื่นทั้งหมด
- Bข้อมูลและดัชนี
- Cข้อมูลเท่านั้น
- Dข้อมูลและการอ้างอิงไปยังโหนดถัดไป
2.ง่าย
โครงสร้างใดมักใช้สร้างคิวลำดับความสำคัญ (priority queue)
- Aลิงก์ลิสต์เชิงเดี่ยวที่ไม่เรียงลำดับ
- Bสตริง
- Cฮีป (heap)
- Dสแตก (stack)
3.ง่าย
ในกราฟ วงจร (cycle) คืออะไร
- Aจุดยอดที่ไม่มีเส้นเชื่อม
- Bเส้นทางที่เยี่ยมทุกจุดยอด
- Cเส้นเชื่อมที่มีน้ำหนักเป็นศูนย์
- Dเส้นทางที่เริ่มและสิ้นสุดที่จุดยอดเดียวกัน
4.ปานกลาง
วิธีแก้การชนกันแบบใดเก็บคีย์ที่ชนกันไว้ในลิสต์ที่ถังเดียวกัน
- Aการตรวจสอบเชิงเส้น (linear probing)
- Bการตรวจสอบกำลังสอง (quadratic probing)
- Cการเชื่อมโซ่แยก (separate chaining)
- Dการแฮชซ้อน (double hashing)
5.ปานกลาง
โปรแกรมที่ทำงานอยู่ใช้โครงสร้างข้อมูลใดติดตามการเรียกฟังก์ชันที่กำลังทำงานและตัวแปรท้องถิ่น
- Abinary search tree ของเฟรม
- Bสแตกการเรียก (call stack)
- Cคิวหน่วยความจำฮีป
- Dตารางแฮชของฟังก์ชัน
6.ปานกลาง
แอปพลิเคชันต้องการค้นหาเร็ว และต้องแสดงรายการคีย์เรียงลำดับและตอบคำถามช่วง โครงสร้างใดเหมาะที่สุด
- Aตารางแฮช
- Bสแตก
- Cbinary search tree แบบสมดุล
- Dลิงก์ลิสต์ที่ไม่เรียงลำดับ
7.ยาก
เหตุใดจึงลบสมาชิกออกจาก Bloom filter มาตรฐานโดยเพียงล้างบิตของมันไม่ได้
- Aการลบจะเพิ่มอัตราผลบวกเท็จเป็น 100%
- Bบิตใน Bloom filter เปลี่ยนไม่ได้หลังสร้าง
- Cบิตเหล่านั้นอาจเป็นของสมาชิกอื่นด้วย ซึ่งจะทำให้เกิดผลลบเท็จ
- DBloom filter เก็บสมาชิกเต็มรูป ซึ่งเมื่อถูกแฮชแล้วหาไม่พบอีก
8.ยาก
ในตารางแฮชที่ใช้ open addressing เหตุใดการลบจึงมักทำด้วยเครื่องหมาย "tombstone"
- Aคีย์ที่ลบต้องเก็บไว้ตลอดไปเพื่อความปลอดภัย จึงใช้ช่องนั้นซ้ำไม่ได้
- Bทำให้ตารางเรียงลำดับ
- Cการทำให้ช่องว่างอาจทำลายลำดับการตรวจสอบสำหรับคีย์อื่น
- Dtombstone เร่งการแฮช
เฉลย
- 1. D · ข้อมูลและการอ้างอิงไปยังโหนดถัดไป
- 2. C · ฮีป (heap)
- 3. D · เส้นทางที่เริ่มและสิ้นสุดที่จุดยอดเดียวกัน
- 4. C · การเชื่อมโซ่แยก (separate chaining)
- 5. B · สแตกการเรียก (call stack)
- 6. C · binary search tree แบบสมดุล
- 7. C · บิตเหล่านั้นอาจเป็นของสมาชิกอื่นด้วย ซึ่งจะทำให้เกิดผลลบเท็จ
- 8. C · การทำให้ช่องว่างอาจทำลายลำดับการตรวจสอบสำหรับคีย์อื่น
เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com