Эти списки должны реализовывать (конфирмить) ваш протокол LinkedList.
Интерфейс (список функций и полей) у протокола и реализациях протокола - на ваше усмотрение, но должна быть возможность добавить и удалить элемент из списка.
Эти списки должны иметь возможность работать с любыми типами данных (нужно использовать generic`и).
В качестве узлов (nodes) использовать объекты структур, если у кого-то возникают проблемы с структурами - тогда можно использовать класс.
В вашей реализации должна быть, как минимум, одна функция, которая может возвращать ошибку.
Также необходимо написать extension к LinkedList, который будет давать возможность добавлять в список все элементы из другого списка.
Реализовать однонаправленный и двунаправленный список.
Эти списки должны реализовывать (конфирмить) ваш протокол LinkedList.
Интерфейс (список функций и полей) у протокола и реализациях протокола - на ваше усмотрение, но должна быть возможность добавить и удалить элемент из списка.
Эти списки должны иметь возможность работать с любыми типами данных (нужно использовать generic`и).
В качестве узлов (nodes) использовать объекты структур, если у кого-то возникают проблемы с структурами - тогда можно использовать класс.
В вашей реализации должна быть, как минимум, одна функция, которая может возвращать ошибку.
Также необходимо написать extension к LinkedList, который будет давать возможность добавлять в список все элементы из другого списка.