โครงสร้างข้อมูล Queue ใน Python
Queue ประมวลผลสมาชิกตามลำดับที่เข้ามา
โครงสร้างข้อมูล Queue ใน Python คืออะไร?
Queue ประมวลผลสมาชิกตามลำดับที่เข้ามา
สร้างคิว FIFO อย่างมีประสิทธิภาพด้วย deque
ควรใช้เมื่อใด?
- ทำความเข้าใจอัลกอริทึมและโครงสร้างข้อมูล
- สังเกตแต่ละขั้นตอนและกรณีขอบ
- เปรียบเทียบเวลาและหน่วยความจำ
โค้ดตัวอย่าง
main.py
from collections import deque
queue = deque(["first", "second"])
queue.append("third")
print("served:", queue.popleft())
print("waiting:", list(queue))
ผลลัพธ์ที่คาดหวัง
served: first
waiting: ['second', 'third']
หลักการทำงาน
deque เพิ่มด้านขวาและนำออกด้านซ้ายใน O(1)
เปลี่ยนค่าและรันโปรแกรมด้วย คอมไพเลอร์ Python ออนไลน์ของ CodeUtility โดยไม่ต้องติดตั้ง Python
แบบฝึกหัด
ลองเปลี่ยน input และทดสอบกรณีขอบก่อนใช้ชุดข้อมูลที่ใหญ่ขึ้น
- ทดสอบ input ว่าง หนึ่งสมาชิก และค่าซ้ำ
- แสดงสถานะหลังแต่ละขั้นตอน
- เปรียบเทียบประสิทธิภาพกับวิธีอื่น