פייתון/פייתון גרסה 3/תור
< פייתון | פייתון גרסה 3
תור (queue) הוא מבנה נתונים מופשט, מוגבל בגודלו, המוגדר על ידי הפעולות הבאות:
- הכנסה (enqueue) - הוספת אובייקט אחד חדש בסופו של התור (tail).
- הוצאה (dequeue) - הוצאתו של האובייקט הנמצא בראש התור (head).
על חלק מהמחסניות ניתן להפעיל את הפונקציות:
- is_empty() - בודקת האם המחסנית ריקה כלומר אם tail=head.
- peek() - בדיקה מה הוא האובייקט הבא.
כל הפעולות מתבצעות בסיבוכיות , כלומר במספר פעולות שאיננו תלוי בגודל הקלט.
דוגמה
עריכהקיים מודל בפייתון queue באמצעותו ניתן לייצר תורים שונים.
אנו נייצר תור מסוג Queue:
import queue
q = queue.Queue()
נבצע הכנסת של איברים:
import queue
q = queue.Queue()
q.put('A')
q.put('B')
print(q.queue)
>>>deque(['A', 'B'])
נוציא את האיברים:
import queue
q = queue.Queue()
q.put('A')
q.put('B')
print(q.queue)
q.get()
print(q.queue)
q.get()
print(q.queue)
q.get()
print(q.queue)
>>>deque(['A', 'B'])
>>>deque(['B'])
>>>deque([])