Разработать шаблоны для указанных классов. Пример разработки шаблона класса см. в лекции 15.
Разработать необходимый и достаточный набор функций-членов класса. Для ввода и вывода структур использовать перегрузку операций >> и <<.
Шаблон должен представлять структуру в общем виде. Ни в коем случае не реализовывать через функции-члены класса задание конкретного варианта!
Решить задание своего и следующего варианта. Для решения задач вариантов разработать шаблонную функцию для удаления из списка указанных элементов (одну на оба варианта) и шаблонную функцию для разделения очереди/дека (одну на оба варианта). Для отбора элементов передавать параметр-функцию, фактический параметр записывать с помощью лямбда-выражения. Из списка элементы удалять, новый список при этом не создавать. Исходную очередь или исходный дек восстанавливать не надо.
Обратите внимание, что задания для работы со списками и очередью/деком разные!
Разделить исходную структуру на две такие же структуры. В первую поместить элементы, удовлетворяющие условию, во вторую – элементы, не удовлетворяющие условию.