Реализовать структуру данных "Очередь" с помощью односвязного списка.
Очередь - структура данных, в которую все элементы помещаются в конец,
а удаляются с начала, то есть действует правило "FIFO"
("первым пришел - первым вышел").
Нужно реализовать следующие процедуры и функции:
procedure enqueue(x: integer); - поместить x в очередь
function dequeue: integer; - удалить элемент из начала очереди и вернуть его значение
function first: integer; - тольео вернуть значение элемента из начала очереди, не удаляя
function size: integer; - вернуть количество элементов в очереди
Ваша программа должна выглядеть так (скопируйте скелет программы в Delphi):
uses queue; //во время отладки закомментируйте
//вставьте сюда код для работы со связным списком
//...
procedure enqueue(x: integer);
//здесь напишите тело процедуры
function dequeue: integer;
//здесь напишите тело функции
function first: integer;
//здесь напишите тело функции
function size: integer;
//здесь напишите тело функции
begin
Check(enqueue, dequeue, first, size); //во время отладки закомментируйте
end.
Ваша программа будет проверяться специальной процедурой check из модуля queue, при отправке программы на проверку не забудьте
раскомментировать соответствующие строчки.
|