Очереди

Очередь - одномерная структура данных, для которой загрузка или извлечение элементов осуществляется с помощью указателей начала (head) и конца (tail) очереди в соответствии с правилом FIFO (first-in, first-out - первым введен, первым выведен).

  • Начальная установка:
head=1; tail=1;
  • Добавление элемента:
· queue[tail]=x; tail=tail+1;if(tail>qd) tail=1;

Здесь qd - размерность очереди.

  • Исключение элемента:
· x=queue[head]; head=head+1;if(head>qd) tail=1;
  • Проверка переполнения очереди и включение в нее элемента:
· temp=tail+1;· if(temp=head)· {Переполнение}else {queue[tail]=x; tail=temp}
  • Проверка наличия элементов и исключение элемента х:
· if(head==tail) { очередь пуста}· else{ x=queue[head]; head=head+1;if(head>qd) head=1;}

Отметим, что, при извлечении элемента из очереди, все элементы могут также перемещаться на один шаг к ее началу.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: