طابور
في علوم الحاسوب، الطابور هوترتيب لأشياء بحيث تتوالي، ويكون أول شيء يدخل الطابور هوأول ما يخرج منه ، وآخر ما يدخله هوآخر ما يخرج منه.
في فهم الحاسوب
تستخدم بنية بيانات الطابور في فهم الحاسوب بشكل مكثف وتسمى بالإنجليزية Queue. وتعرّف بأنها مجموعة لها مبدأ في الترتيب هوإما FIFO ، أي First In First Out بمعنى الداخل أولا هوالخارج أولا ، والآخر LIFO أي Last In First Out بمعنى الداخل أخيرا هوالخارج أولا وهذا النوع مشهور بإسم الرصّة أوالتكديس ، وبالإنجليزية يسمى Stack ، ويمكن تخيله بمجموعة صحون مرتبة فوق بعضها البعض ، فأول صحن يوضع سيكون آخر صحن يمكن أخذه إذا كنت تأخذ الصحون من الأعلى ، وآخر صحن وضع في الأعلى سيكون أول صحن يمكن آخذه. للمزيد من المعلومات عن النوع الثاني ، إقرا منطق المكدس.
بالنسبة للطابور فإن بناءه يمكن حتى يتم بعدّة طرق ، منها جدول أوصفيف سهل ، أوكسلسلة مترابطة يتم زيادة العناصر إليها ، فتكون كأنها جدول يتم تغيير حجمه بحسب الحاجة.
الطابور كبناء بياناتيّ
في حال تم بناء الطابور كجدول Array ، فإن بناءهقد يكون بحيثقد يكون بداية الطابور يساوي نهايته طالما كان الطابور فارغا ، فلوحتى الجدول فيه عشرة عناصر ، فإن الفرق بين العنصر الأول والأخير سيكون صفرا عندماقد يكون الطابور فارغا .
طابور كمصفوفة ذات بعد واحد
في الرسم السابق F تمثل العنصر الأول في الطابور بينما R تمثل العنصر الأخير،
وفي الرسم السابق نلاحظ حتى الحد الأقصى لعدد عناصر الطابور هوn.
عند إدراج عنصر ما في الطابور فإنه يحتل المؤخرة ، فهوآخر عنصر في الطابور ، وبالتالي ، فإن نهاية الطابور ستتقدم بمقدار وحدة ، وعند إخراج عنصر من الطابور ، فإن المقدمة ستنتقل للعنصر التالي ، وسيزداد عداد بداية الطابور وحدة واحدة .
عندما يصبح الطابور ممتلأ فإن نهاية الطابور ستساوي الحجم الأكبر للطابور ، ولوكان بناء الطابور دورانيا ، أي أنه عندما يخرج عنصر من الطابور فإن الطابور لا يتقدم بالكامل ، ولكن فقط مؤشر البداية ينتقل للعنصر التالي ، فإن الطابور يمتليء عندما يصبح زيادة عنصر على بداية الطابور سيؤدي إلى الكتابة فوق مقدمته ، اي ان باقي قسمة نهاية الطابور +1 على حجم الطابور سيساوي قيمة المؤشر على الخانة الأولى.