STL. LIST
По сути list реализует двусвязные списки, позволяя быстро добавлять и удалять элементы без копирования всего массива данных.
Для работы необходимо подключить библиотеку
#include <list>
List входит в пространство имен std, поэтому или пишем std:: или используем пространство имен using namespace std;
У итератора листа нет возможности произвольного доступа, нужно идти по каждому элементу.
list myList;
list myList={1,2,3};
list myList(10,2);
myList.push_back(2); //добавить элемент в конец списка
myList.push_front(1); //добавить элемент в начало списка
myList.pop_back(); //удалить элемент из конца списка
myList.pop_front(); //удалить элемент из начала списка
myList.size(); //кол-во элементов
myList.clear(); //очистка листа
//Добавление и удаление элементов
auto iter=myList.begin(); //итератор на 0 элемент
advance(iter,1);
myList.insert(iter,15); //как 1 элемент вставляем число 15
advance(iter,1);
myList.erase(iter); //удалить элемент.
myList.sort(); //сортировка элементов по возрастанию
myList.unique(); //удаляет ПОСЛЕДОВАТЕЛЬНЫЕ дубликаты в списке т.е. 3,1,2,3,3,4 станет 3,1,2,3,4
myList.reverse(); //меняет порядок элементов в коллекции 1,2,3 станет 3,2,1
myList.remove(5); //поиск по коллекции и удаление числа 5
myList.assign(3,15); //удаляет предыдущий лист и создает новый размером 3 и заполненный числами 15
myList.assign(myList2.begin(),myList2.end()); //создает в контейнере myList копию myList2 (удаляет старый лист и создает новый-копию)