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

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

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

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

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

1.ง่าย

การดำเนินการของสแตกที่เพิ่มสมาชิกไว้ด้านบนเรียกว่าอะไร

  1. APop
  2. BPeek
  3. CPush
  4. DEnqueue
2.ง่าย

แมป (map หรือ dictionary) เก็บอะไร

  1. Aค่าที่เรียงตามขนาด
  2. Bค่าตามลำดับการแทรกเท่านั้น
  3. Cคู่คีย์–ค่าที่คีย์ไม่ซ้ำกัน
  4. Dคู่ของคีย์ที่เท่ากัน
3.ง่าย

กราฟมีทิศทาง (directed graph) คืออะไร

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

เหตุใดการท่องอาร์เรย์จึงเร็วกว่าการท่องลิงก์ลิสต์ที่ยาวเท่ากันมากในทางปฏิบัติ

  1. Aอาร์เรย์ใช้คำสั่งน้อยกว่าในการเปรียบเทียบค่า
  2. Bการท่องอาร์เรย์เป็น O(1) โดยรวม ส่วนการท่องลิงก์ลิสต์เป็น O(n)
  3. Cลิงก์ลิสต์เก็บสมาชิกบนดิสก์เสมอ
  4. Dสมาชิกของอาร์เรย์ต่อเนื่องกัน จึงใช้แคชของ CPU ได้ดี
5.ปานกลาง

โปรแกรมที่ทำงานอยู่ใช้โครงสร้างข้อมูลใดติดตามการเรียกฟังก์ชันที่กำลังทำงานและตัวแปรท้องถิ่น

  1. Aคิวหน่วยความจำฮีป
  2. Bสแตกการเรียก (call stack)
  3. Cตารางแฮชของฟังก์ชัน
  4. Dbinary search tree ของเฟรม
6.ปานกลาง

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

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

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

  1. AO(n log n)
  2. BO(1)
  3. CO(log n)
  4. DO(n)
8.ยาก

หากไม่มี union by rank หรือ path compression ต้นทุนในกรณีเลวร้ายที่สุดของ find หนึ่งครั้งในโครงสร้าง union-find ที่มี n สมาชิกคือเท่าใด

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

เฉลย

  1. 1. C · Push
  2. 2. C · คู่คีย์–ค่าที่คีย์ไม่ซ้ำกัน
  3. 3. C · กราฟที่เส้นเชื่อมมีทิศทางจากจุดยอดหนึ่งไปอีกจุดหนึ่ง
  4. 4. D · สมาชิกของอาร์เรย์ต่อเนื่องกัน จึงใช้แคชของ CPU ได้ดี
  5. 5. B · สแตกการเรียก (call stack)
  6. 6. D · ดัชนี 4
  7. 7. C · O(log n)
  8. 8. B · O(n)

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