Вставка по итератору в список в C++
Когда нужна позиция между узлами, берут
итератор и вызывают метод insert.
Новый узел вставляют перед указанной позицией.
Остальные элементы не переносятся блоком, как
во vector: меняются только связи
между узлами.
Запишем список, сдвинем итератор на второй узел, вставим число перед ним и выведем среднее значение обходом:
std::list<int> nums = {10, 30};
auto it = nums.begin();
++it;
nums.insert(it, 20);
std::cout << *++nums.begin() << "\n";
В списке из двух целых вставьте между ними третье число и выведите элемент, на который указывает итератор на вторую позицию.