Основные примитивы для работы с очередью.
Очередь – это структура данных, организованная по принципу: первым вошёл, первым ушёл, или реализующая дисциплину FIFO.
Очередь элемента может быть реализована с использованием массивов связного списка или другим способом. Базовыми операциями для работы с очередью являются:
put () – поместить элемент в очередь;
get () – удалить элемент из очереди.
Чтобы не ограничивать максимальное число элементов в очереди наиболее целесообразно её построение в виде односвязного списка. Начало списка хранится во внутренней переменной head. Добавление новых элементов происходит в голову. Последний элемент помещается особым образом, например, после указателя на следующий элемент равного NULL. Извлечение элемента из очереди требует сканирование списка для поиска последнего элемента. Этот элемент удаляется из списка.