Виды очередей

В этой статье вы познакомитесь с различными видами очередей. Всего существует 4 типа очередей. Коротко и с картинками о каждой.

Простая очередь

Простая очередь подчиняется принципу FIFO: элемент вставляется в конец очереди, а удаляется из ее начала.

Подробнее о простых очередях.

Круговая очередь

В круговой очереди последний элемент указывает на первый — это образует круг.

Главное преимущество кругового списка над обычным — более эффективное использование памяти. Если последняя позиция очереди занята, а первая пуста, элемент будет добавлен именно туда. В простых очередях сделать то же самое невозможно. 

Подробнее о круговых очередях.

Очередь с приоритетом

Очередь с приоритетом — тип очереди, в котором каждый элемент имеет свой приоритет. Порядок обслуживания элементов зависит от их приоритета. Если два элемента имеют одинаковый приоритет, то они обслуживаются в соответствии с их порядком в очереди. 

Вставка зависит от переданного значения элемента. Удаление же происходит исходя из ее приоритета.

Подробнее об очередях с приоритетом.

Двухсторонняя очередь

Двусторонняя очередь — тип очереди, в котором вставка и удаление элементов может происходить как с начала, так и с конца очереди. То есть, она не подчиняется принципу FIFO («первый пришел — первый вышел»)

Подробнее о двухсторонних очередях.

Проверьте себя
1. В чём главное преимущество круговой очереди перед простой?
AКруговая очередь поддерживает приоритеты элементов
BКруговая очередь работает по принципу LIFO
CБолее эффективное использование памяти — можно переиспользовать освободившиеся позиции
DКруговая очередь не имеет ограничений на размер
2. Двусторонняя очередь (Deque) отличается от обычной тем, что:
AУдаление элементов возможно только с одной стороны
BЭлементы обслуживаются по приоритету
CВставка и удаление возможны как с начала, так и с конца — не соблюдается FIFO
DЭлементы хранятся в кольце
3. В очереди с приоритетом два элемента имеют одинаковый приоритет. Как они обслуживаются?
AПо их порядку в очереди (тот, кто раньше вошёл)
BСлучайным образом
CОба удаляются одновременно
DЭлемент с большим значением обслуживается первым