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

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

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

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

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

1.ง่าย

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

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

การดำเนินการใดเป็น O(1) สำหรับอาร์เรย์แต่เป็น O(n) สำหรับลิงก์ลิสต์เชิงเดี่ยว

  1. Aการเข้าถึงสมาชิกที่ดัชนี i
  2. Bการลบสมาชิกหัว
  3. Cการอ่านสมาชิกตัวแรก
  4. Dการแทรกที่หัว
3.ง่าย

การดำเนินการ peek (หรือ top) บนสแตกทำอะไร

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

extract-min ใน min-heap ทวิภาคทำงานอย่างไร

  1. Aลบรากและเลื่อนสมาชิกทั้งหมดไปทางซ้ายหนึ่งตำแหน่ง
  2. Bลบสมาชิกสุดท้ายของอาร์เรย์
  3. Cย้ายสมาชิกสุดท้ายไปที่รากและเลื่อนลง (sift down)
  4. Dค้นหาใบทั้งหมดเพื่อหาค่าต่ำสุดใหม่
5.ปานกลาง

ในคิววงกลมที่เก็บในอาร์เรย์ความจุ n ตำแหน่งถัดจากดัชนี i คำนวณอย่างไร

  1. A(i + 1) mod n
  2. B(i − 1) mod n
  3. Ci + 1
  4. D2i + 1
6.ปานกลาง

การท่องแบบ in-order ของ binary search tree เยี่ยมคีย์ตามลำดับ

  1. Aตามระดับ
  2. Bตามลำดับการแทรก
  3. Cเรียงจากน้อยไปมาก
  4. Dเรียงจากมากไปน้อยเสมอ
7.ยาก

การแทรกคีย์ในต้นไม้ AVL ทำให้ต้นไม้ย่อยซ้ายของโหนดสูงเกินไป และคีย์ใหม่อยู่ในต้นไม้ย่อยซ้ายของลูกซ้าย (กรณีซ้าย–ซ้าย) ใช้วิธีแก้ใด

  1. Aเปลี่ยนสีโหนดและลูกของมัน
  2. Bหมุนซ้ายที่ลูก แล้วหมุนขวาที่โหนด
  3. Cหมุนซ้ายหนึ่งครั้งที่โหนดที่ไม่สมดุล
  4. Dหมุนขวาหนึ่งครั้งที่โหนดที่ไม่สมดุล
8.ยาก

segment tree มักใช้เพื่อ

  1. Aตอบคำถามช่วง (เช่น ผลรวมช่วง) และอัปเดตใน O(log n)
  2. Bเก็บเส้นเชื่อมของกราฟ
  3. Cเรียงสตริงตามตัวอักษรโดยเก็บแต่ละคำนำหน้าไว้ในโหนดต้นไม้แยกกัน
  4. Dสร้างสแตก

เฉลย

  1. 1. D · สแตก (stack)
  2. 2. A · การเข้าถึงสมาชิกที่ดัชนี i
  3. 3. D · คืนสมาชิกบนสุดโดยไม่เอาออก
  4. 4. C · ย้ายสมาชิกสุดท้ายไปที่รากและเลื่อนลง (sift down)
  5. 5. A · (i + 1) mod n
  6. 6. C · เรียงจากน้อยไปมาก
  7. 7. D · หมุนขวาหนึ่งครั้งที่โหนดที่ไม่สมดุล
  8. 8. A · ตอบคำถามช่วง (เช่น ผลรวมช่วง) และอัปเดตใน O(log n)

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