В този урок ще научите различни видове опашки заедно с илюстрация.
Опашката е полезна структура от данни при програмирането. Подобно е на опашката за билети извън киносалона, където първият човек, който влиза в опашката, е първият човек, който получава билета.
Има четири различни вида опашки:
- Обикновена опашка
- Кръгла опашка
- Опашка с приоритет
- Двойно завършена опашка
Обикновена опашка
В обикновена опашка вмъкването става отзад, а отстраняването става отпред. Той стриктно следва правилото FIFO (First in First out).

За да научите повече, посетете Структура на данните за опашката.
Кръгла опашка
В кръгова опашка последният елемент сочи към първия елемент, който прави кръгова връзка.

Основното предимство на кръговата опашка пред обикновената опашка е по-доброто използване на паметта. Ако последната позиция е пълна и първата позиция е празна, можем да вмъкнем елемент в първата позиция. Това действие не е възможно в обикновена опашка.
За да научите повече, посетете Circular Queue Data Structure.
Опашка с приоритет
Приоритетна опашка е специален вид опашка, при която всеки елемент е свързан с приоритет и се обслужва според неговия приоритет. Ако се появят елементи със същия приоритет, те се обслужват според реда им в опашката.

Вмъкването се извършва въз основа на пристигането на стойностите, а премахването се извършва въз основа на приоритета.
За да научите повече, посетете Структура на данните за приоритетната опашка.
Deque (Double Ended Queue)
В двойна опашка, вмъкването и премахването на елементи може да се извърши отпред или отзад. По този начин той не следва правилото FIFO (First In First Out).

За да научите повече, посетете Deque Data Structure.