1.ง่าย
การดำเนินการของสแตกที่เพิ่มสมาชิกไว้ด้านบนเรียกว่าอะไร
- APop
- BPeek
- CPush
- DEnqueue
2.ง่าย
deque (double-ended queue) คืออะไร
- Aคิวที่อนุญาตให้เอาออกจากด้านหลังเท่านั้น
- Bคิวที่เรียงตามลำดับความสำคัญ
- Cคิวสองคิวที่ใช้อาร์เรย์ร่วมกัน
- Dโครงสร้างที่อนุญาตให้แทรกและเอาออกที่ทั้งสองปลาย
3.ง่าย
อะไรคือนิยามของต้นไม้ทวิภาค (binary tree)
- Aทุกโหนดมีลูกสองตัวพอดี
- Bทุกโหนดมีลูกไม่เกินสองตัว
- Cทุกโหนดเก็บเลขฐานสอง
- Dต้นไม้มีสองระดับพอดี
4.ปานกลาง
โปรแกรมที่ทำงานอยู่ใช้โครงสร้างข้อมูลใดติดตามการเรียกฟังก์ชันที่กำลังทำงานและตัวแปรท้องถิ่น
- Aสแตกการเรียก (call stack)
- Bคิวหน่วยความจำฮีป
- Cตารางแฮชของฟังก์ชัน
- Dbinary search tree ของเฟรม
5.ปานกลาง
เหตุใดการท่องอาร์เรย์จึงเร็วกว่าการท่องลิงก์ลิสต์ที่ยาวเท่ากันมากในทางปฏิบัติ
- Aอาร์เรย์ใช้คำสั่งน้อยกว่าในการเปรียบเทียบค่า
- Bลิงก์ลิสต์เก็บสมาชิกบนดิสก์เสมอ
- Cการท่องอาร์เรย์เป็น O(1) โดยรวม ส่วนการท่องลิงก์ลิสต์เป็น O(n)
- Dสมาชิกของอาร์เรย์ต่อเนื่องกัน จึงใช้แคชของ CPU ได้ดี
6.ปานกลาง
วิธีแก้การชนกันแบบใดเก็บคีย์ที่ชนกันไว้ในลิสต์ที่ถังเดียวกัน
- Aการเชื่อมโซ่แยก (separate chaining)
- Bการตรวจสอบเชิงเส้น (linear probing)
- Cการตรวจสอบกำลังสอง (quadratic probing)
- Dการแฮชซ้อน (double hashing)
7.ยาก
โครงสร้างใดช่วยคำนวณค่าสูงสุดของทุกหน้าต่างขนาด k ในอาร์เรย์ในเวลารวม O(n)
- Amin-heap ที่สร้างใหม่ทุกหน้าต่าง
- Bdeque ที่เก็บดัชนีเรียงตามค่าจากมากไปน้อย
- Cลิงก์ลิสต์เชิงเดี่ยวของสมาชิกในหน้าต่าง
- Dอาร์เรย์เรียงลำดับที่อัปเดตด้วยการเลื่อน
8.ยาก
วัตถุถูกเก็บเป็นคีย์ใน hash map จากนั้นฟิลด์ที่ฟังก์ชันแฮชใช้ถูกเปลี่ยน ผลลัพธ์ที่น่าจะเกิดคืออะไร
- Amap โยนข้อผิดพลาดทันทีที่ฟิลด์เปลี่ยน
- Bการค้นหาวัตถุอาจล้มเหลว เพราะมันอยู่ในถังของแฮชเก่า
- Cmap ย้ายคีย์ไปถังใหม่โดยอัตโนมัติ
- Dไม่มีอะไรเปลี่ยน เพราะแฮชของคีย์คำนวณเพียงครั้งเดียวตอนโปรแกรมเริ่มทำงาน
เฉลย
- 1. C · Push
- 2. D · โครงสร้างที่อนุญาตให้แทรกและเอาออกที่ทั้งสองปลาย
- 3. B · ทุกโหนดมีลูกไม่เกินสองตัว
- 4. A · สแตกการเรียก (call stack)
- 5. D · สมาชิกของอาร์เรย์ต่อเนื่องกัน จึงใช้แคชของ CPU ได้ดี
- 6. A · การเชื่อมโซ่แยก (separate chaining)
- 7. B · deque ที่เก็บดัชนีเรียงตามค่าจากมากไปน้อย
- 8. B · การค้นหาวัตถุอาจล้มเหลว เพราะมันอยู่ในถังของแฮชเก่า
เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com