ใบงาน โครงสร้างข้อมูล พร้อมเฉลย

ใบงาน โครงสร้างข้อมูล ฟรีสำหรับพิมพ์: 8 ข้อ ตั้งแต่ระดับง่ายถึงระดับข้อสอบจริง พร้อมเฉลย พิมพ์หรือบันทึกเป็น PDF ได้

ใบงานใหม่ฝึกออนไลน์พร้อมคำใบ้

สำหรับผู้สอน: พิมพ์ ทำสำเนา และใช้ในชั้นเรียนได้ฟรี ใบงานใหม่แต่ละชุดมีค่าตัวเลขใหม่และเฉลยของตัวเอง หากใส่ลิงก์ไปยัง ExamProblems ในหน้ารายวิชาของคุณ เราจะขอบคุณมาก

ชื่อ: ____________________   วันที่: ____________

1.ง่าย

การดำเนินการของคิวที่เอาสมาชิกด้านหน้าออกเรียกว่าอะไร

  1. AInsert
  2. BDequeue
  3. CEnqueue
  4. DPush
2.ง่าย

กราฟมีน้ำหนัก (weighted graph) คืออะไร

  1. Aกราฟที่เก็บบนดิสก์
  2. Bกราฟที่จุดยอดบางจุดหนักกว่าจุดอื่นเพราะมีเส้นเชื่อมมากกว่า
  3. Cกราฟที่แต่ละเส้นเชื่อมมีค่าตัวเลข เช่น ต้นทุนหรือระยะทาง
  4. Dกราฟที่มีเส้นเชื่อมมากกว่าจุดยอด
3.ง่าย

อะไรคือนิยามของต้นไม้ทวิภาค (binary tree)

  1. Aทุกโหนดมีลูกสองตัวพอดี
  2. Bทุกโหนดมีลูกไม่เกินสองตัว
  3. Cทุกโหนดเก็บเลขฐานสอง
  4. Dต้นไม้มีสองระดับพอดี
4.ปานกลาง

จุดประสงค์ของโหนดยามเฝ้า (sentinel หรือ dummy) ในลิงก์ลิสต์คืออะไร

  1. Aเพื่อป้องกันไม่ให้ลิสต์ขยายเกินจำนวนโหนดสูงสุดที่กำหนดไว้
  2. Bทำให้ลิสต์เรียงลำดับ
  3. Cเก็บจำนวนสมาชิก
  4. Dทำให้โค้ดง่ายขึ้นโดยตัดกรณีพิเศษที่หัวหรือท้าย
5.ปานกลาง

วิธีแก้การชนกันแบบใดเก็บคีย์ที่ชนกันไว้ในลิสต์ที่ถังเดียวกัน

  1. Aการแฮชซ้อน (double hashing)
  2. Bการเชื่อมโซ่แยก (separate chaining)
  3. Cการตรวจสอบกำลังสอง (quadratic probing)
  4. Dการตรวจสอบเชิงเส้น (linear probing)
6.ปานกลาง

ตารางแฮชขนาด 7 ใช้ h(k) = k mod 7 และ linear probing หลังแทรก 10 แล้ว 17 ถูกเก็บที่ใด

  1. Aดัชนี 6
  2. Bดัชนี 3
  3. Cดัชนี 4
  4. Dดัชนี 0
7.ยาก

ในตารางแฮชที่ใช้ open addressing เหตุใดการลบจึงมักทำด้วยเครื่องหมาย "tombstone"

  1. Aการทำให้ช่องว่างอาจทำลายลำดับการตรวจสอบสำหรับคีย์อื่น
  2. Btombstone เร่งการแฮช
  3. Cคีย์ที่ลบต้องเก็บไว้ตลอดไปเพื่อความปลอดภัย จึงใช้ช่องนั้นซ้ำไม่ได้
  4. Dทำให้ตารางเรียงลำดับ
8.ยาก

คุณต้องเก็บค่าที่น้อยที่สุด k ตัวจากสตรีมของตัวเลข n ตัวโดยใช้หน่วยความจำ O(k) แนวทางใดทำงานใน O(n log k)

  1. Aคิว FIFO ของ k ค่าล่าสุด
  2. Bmax-heap ขนาด k โดยแทนที่รากเมื่อมีค่าที่เล็กกว่ามา
  3. Cmin-heap ที่เก็บค่าทั้ง n ตัว แล้วดึงค่าที่น้อยที่สุด k ตัวออกมาตอนท้าย
  4. Dอาร์เรย์เรียงลำดับของค่าทั้ง n

เฉลย

  1. 1. B · Dequeue
  2. 2. C · กราฟที่แต่ละเส้นเชื่อมมีค่าตัวเลข เช่น ต้นทุนหรือระยะทาง
  3. 3. B · ทุกโหนดมีลูกไม่เกินสองตัว
  4. 4. D · ทำให้โค้ดง่ายขึ้นโดยตัดกรณีพิเศษที่หัวหรือท้าย
  5. 5. B · การเชื่อมโซ่แยก (separate chaining)
  6. 6. C · ดัชนี 4
  7. 7. A · การทำให้ช่องว่างอาจทำลายลำดับการตรวจสอบสำหรับคีย์อื่น
  8. 8. B · max-heap ขนาด k โดยแทนที่รากเมื่อมีค่าที่เล็กกว่ามา

เฉลยทีละขั้นตอนฉบับเต็ม: ฝึกหัวข้อนี้ได้ที่ examproblems.com