תור (מבנה נתונים)

מתוך ויקיפדיה, האנציקלופדיה החופשית

קפיצה אל: ניווט, חיפוש

במדעי המחשב, תור (queue) הוא מבנה נתונים המוגדר על ידי הפעולות הבאות:

פעולות ההכנסה וההוצאה בתור מבוססות על העקרון נכנס ראשון - יוצא ראשון FIFO, זאת בניגוד למחסנית שמממשת את אותן הפעולות, אבל לפי עקרון הנכנס ראשון- יוצא אחרון - LIFO).

[עריכה] מימוש תורים

תורים ממומשים בדרך כלל בעזרת מערך לשמירת הנתונים, ומשתני עזר לשמירת מיקומו של ראש התור וזנבו בתוך המערך. למימוש כזה קוראים גם לעתים חוצץ מעגלי (cyclic buffer).

[עריכה] מימוש תורים בשפות תכנות

בשפות תכנות בדרך כלל אין טיפוס מובנה לתורים, אם כי בחלק מהשפות הספריות הסטנדרטיות מכילות מימושים עבור המבנה. למשל ב-++C יש את מחלקות ה-queue ו-dequeue המממשות סוגים שונים של תורים.

[עריכה] יישומי התור

תורים משמשים באלגוריתמים הדורשים שמירה על סדר במהלך העברת הנתונים (למשל העברת הודעות בין תהליכונים (Threads) של תוכנית כלשהי ממומשת לרוב בעזרת תורים), ובמבני נתונים מורכבים יותר כמו למשל תור עדיפויות, שמשמשים לטיפול בריבוי משימות במערכות הפעלה המודרניות, טיפול בבקשות הנכנסות בשרתי אינטרנט, וכדומה.

Stub comp.png ערך זה הוא קצרמר בנושא מחשבים. אתם מוזמנים לתרום לוויקיפדיה ולהרחיב אותו.