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

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

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

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

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

1.ง่าย

โครงสร้างข้อมูลใดทำงานตามหลักการ "เข้าหลังออกก่อน" (last in, first out)

  1. Aสแตก (stack)
  2. Bตารางแฮช (hash table)
  3. Cลิงก์ลิสต์ (linked list)
  4. Dคิว (queue)
2.ง่าย

ในกราฟไม่มีทิศทาง ดีกรี (degree) ของจุดยอดคืออะไร

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

สมาชิกของอาร์เรย์ถูกเก็บในหน่วยความจำอย่างไร

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

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

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

หาคีย์ที่น้อยที่สุดใน binary search tree ได้อย่างไร

  1. Aตามลูกขวาจากรากจนไม่มีลูกขวา
  2. Bดูเฉพาะราก
  3. Cเยี่ยมทุกใบและเปรียบเทียบกัน
  4. Dตามลูกซ้ายจากรากจนไม่มีลูกซ้าย
6.ปานกลาง

ข้อใดเป็นจริงเกี่ยวกับเมทริกซ์ประชิดของกราฟไม่มีทิศทาง

  1. Aเส้นทแยงมุมหลักมีเลขหนึ่งเสมอ
  2. Bสมมาตรเทียบกับเส้นทแยงมุมหลัก
  3. Cเป็นเมทริกซ์สามเหลี่ยมบนเสมอ
  4. Dแต่ละแถวมี 1 เพียงตัวเดียวพอดี
7.ยาก

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

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

ความซับซ้อนเชิงเวลาของ decrease-key ในฮีปทวิภาค (เมื่อทราบตำแหน่งของสมาชิก) คือ

  1. AO(log n)
  2. BO(n log n)
  3. CO(1)
  4. DO(n)

เฉลย

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

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