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

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

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

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

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

1.ง่าย

สมาชิกที่เล็กที่สุดของ min-heap ทวิภาคอยู่ที่ใด

  1. Aในใบใดก็ได้ ซึ่งต้องค้นหา
  2. Bในใบซ้ายสุด
  3. Cที่ราก
  4. Dในตำแหน่งสุดท้ายของอาร์เรย์
2.ง่าย

ข้อแตกต่างหลักระหว่างอาร์เรย์สถิตกับอาร์เรย์พลวัตคืออะไร

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

โครงสร้างใดมักใช้สร้างคิวลำดับความสำคัญ (priority queue)

  1. Aฮีป (heap)
  2. Bสแตก (stack)
  3. Cสตริง
  4. Dลิงก์ลิสต์เชิงเดี่ยวที่ไม่เรียงลำดับ
4.ปานกลาง

ความสูงในกรณีเลวร้ายที่สุดของ binary search tree ที่มี n โหนดคือเท่าใด ถ้าแทรกคีย์ตามลำดับที่เรียงแล้ว

  1. A√n
  2. Blog₂ n
  3. C1
  4. Dn (กลายเป็นลิงก์ลิสต์)
5.ปานกลาง

สมาชิกใหม่ถูกแทรกลงในฮีปทวิภาคอย่างไร

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

คิวถูกสร้างด้วยสแตกสองตัว: push ลงสแตก "in" และ pop จากสแตก "out" โดยเติมจาก "in" เมื่อว่าง ต้นทุนกระจายต่อการดำเนินการคือเท่าใด

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

ตรวจว่าลิงก์ลิสต์เชิงเดี่ยวมีวงจรหรือไม่โดยใช้หน่วยความจำเพิ่ม O(1) ได้อย่างไร

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

splay tree ทำอะไรหลังการเข้าถึงแต่ละครั้ง

  1. Aหมุนโหนดที่เข้าถึงขึ้นไปที่ราก
  2. Bย้ายโหนดที่เข้าถึงไปเป็นใบ
  3. Cเปลี่ยนสีโหนดตามเส้นทางการค้นหา
  4. Dสร้างต้นไม้ใหม่ทั้งหมดให้สมดุล

เฉลย

  1. 1. C · ที่ราก
  2. 2. D · อาร์เรย์พลวัตขยายได้โดยย้ายไปยังบล็อกหน่วยความจำที่ใหญ่กว่า
  3. 3. A · ฮีป (heap)
  4. 4. D · n (กลายเป็นลิงก์ลิสต์)
  5. 5. B · วางที่ท้ายอาร์เรย์และเลื่อนขึ้น (sift up) ตราบที่ยังละเมิดคุณสมบัติฮีป
  6. 6. A · O(1)
  7. 7. C · เลื่อนตัวชี้หนึ่งทีละหนึ่งก้าวและอีกตัวสองก้าว แล้วตรวจว่าพบกันหรือไม่
  8. 8. A · หมุนโหนดที่เข้าถึงขึ้นไปที่ราก

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