06. Двусвязный список
Связный список - это список, но построенный на основе двунаправленной очереди, а не массива.
Задание
Трудоёмкость
Это задание рассчитано на два урока, за него будет выставлено две оценки
Расширьте класс MyQueue из предыдущего задания (использовать встроенные коллекции java запрещается)
так, чтобы он стал списком:
Использовать встроенные коллекции java запрещается
void insert(int i, int v)- добавляет элементvпо индексуi, перед тем, как добавить новый элемент, все, начиная сi-го сдвигаются на вправо, освобождаяi-ю позицию под новый элемент. Если элемента с таким индексом ещё нет, возвращаетfalse, в остальных случаяхtrueboolean addAll(MyQueue myQueue)- добавляет в конец все элементы из списка, полученного в аргументах.boolean insertAll(int index, MyQueue myQueue)- добавляет все элементы из списка, полученного в аргументах по индексуi. Перед тем, как добавить новый элемент, все, начиная сi-го сдвигаются на вправо, освобождаяi-ю позицию под новый элементint get(int index)- получить значение элемента по индексуint indexOf(int v)- возвращает индекс первого элемента, равного переданному в аргументах значению. Если такого элемента нет, то метод должен вернуть значение-1int lastIndexOf(int v)- возвращает индекс последнего элемента, равного переданному в аргументах значению. Если такого элемента нет, то метод должен вернуть значение-1int set(int i, int v)- задаёт новое значение элементу с индексомi, возвращает старое значениеvoid sort()- сортирует очередь по возрастанию
Очередь, построенная на массиве не засчитывается.
Все поля и методы должны иметь модификатор public