Очередь на массиве. Java.

Бюджет: по договоренности
Очередь на массиве. Java.
1. Найдите инвариант структуры данных очередь. Определите функции, которые необходимы для реализации очереди. Найдите их пред- и постусловия. 

2. Реализуйте классы, представляющие циклическую очередь с применением массива. 
- Класс ArrayQueueModule должен реализовывать один экземпляр очереди с использованием переменных класса. 
- Класс ArrayQueueADT должен реализовывать очередь в виде абстрактного типа данных (с явной передачей ссылки на экземпляр очереди). 
- Класс ArrayQueue должен реализовывать очередь в виде класса (с неявной передачей ссылки на экземпляр очереди). 
- Должны быть реализованы следующие функции (процедуры) / методы: 
a) enqueue добавить элемент в очередь; 
b) element первый элемент в очереди; 
c) dequeue удалить и вернуть первый элемент в очереди; 
d) size текущий размер очереди; 
e) isEmpty является ли очередь пустой; 
f) clear удалить все элементы из очереди. 
- Инвариант, пред- и постусловия записываются в исходном коде в виде комментариев. 
- Обратите внимание на инкапсуляцию данных и кода во всех трех реализациях. 

3. Напишите тесты реализованным классам. 

В дополнение к коду нужны объяснения работы тех или иных методов, функций. Пред- и постусловия обязательны. Срок выполнения до 19.11.2018. Прикрепил файл откомпилированных тестов, которые должна проходить программа. Классы должны находиться в пакете queue.
Опубликован 21.11.2018 в 16:41

Выберите способ верификации:

Обновите страницу после прохождения верификации.