Опашка (абстрактен тип данни): Разлика между версии

Изтрито е съдържание Добавено е съдържание
Novocob (беседа | приноси)
Редакция без резюме
Novocob (беседа | приноси)
мРедакция без резюме
Ред 1:
[[Файл:QUEUE-FIFO.jpg|рамка|вдясно|Схема на структурата опашка, добавяне и извличане на елементи.]]
'''Опашка''' в програмирането е вид [[абстрактна структура от данни]] и е представител на абстрактните типове данни ([[АТД]]). Опашките спадат към линейните (списъчни) структури от данни, заедно със [[Списък (структура данни)|списъците]] и [[стек (структура от данни)|стековете]]. Опашката представлява крайно, линейно множество от елементи, при което елементи се добавят само най-отзад и се извличат само най-отпред. Абстрактната структура опашка изпълнява условието "първият влязъл първи излиза" (FIFO: First-In-First-Out). Това означава, че след като е добавен един елемент в края на опашката, той ще може да бъде извлечен (премахнат) чак когато бъдат премахнати всички елементи преди него и то в реда, в който са добавени.
Структурата опашка и поведението на нейните елементи произхождат от ежедневната човешка дейност. Например опашка от хора, чакащи на каса за билети. Опашката има начало и край. Новодошлите хора застават последни на опашката, изчакват докато постепенно се придвижват към началото. Когато стигнат до самото начало на опашката си купуват билет и напускат опашката. Други примери за опашка са документи чакащи да бъдат принтирани или ескалатор превозващ хора.
== Статична реализация ==