Форум программистов, компьютерный форум, киберфорум
Наши страницы

STL list - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вывод текста на экран дисплея http://www.cyberforum.ru/cpp-beginners/thread823165.html
Оформить программный продукт в виде многофайловая проекта на языке С++ Все необходимые данные для функций должны передаваться им в качестве параметров. Использование глобальных переменных в...
C++ Объясните синтаксис! Часто встречаю в интернете в листингах подобные записи, сама так не пишу, хочется разобраться что это значит?? int N = ( i==0 ? 0 : matrix ); http://www.cyberforum.ru/cpp-beginners/thread823147.html
C++ невозможно преобразовать параметр
Добрый день. Имеется такой код для поиска и замены в РичТекстБокс: private: System::Void button5_Click(System::Object^ sender, System::EventArgs^ e) { ...
C++ Класс Student с данными
Помогите написать программу.Вот условие:Напишите программу, которая объявляет класс STUDENT с данными family,group,department и функциями установки данных void Setdata() и вывода данных void...
C++ Функция,которая определяет, встречается ли заданная буква, которая передается в функцию как параметр http://www.cyberforum.ru/cpp-beginners/thread823122.html
Написать функцию, которая определяет, встречается ли заданная буква, которая передается в функцию как параметр, во введенной строке. Функция возвращает номер первой позиции, на которой стоит буква,...
C++ Проверить входит ли точка с заданными координатами x и y в заштрихованную область на координатной плоскости Проверить входит ли точка с заданными координатами x и y в заштрихованную область на координатной плоскости. подробнее

Показать сообщение отдельно
yoghurt92
375 / 346 / 22
Регистрация: 17.05.2012
Сообщений: 1,049

STL list - C++

30.03.2013, 19:34. Просмотров 725. Ответов 4
Метки (Все метки)

Доброго времени суток, пока имею поверхностное представление о алгоритмах STL и функциях для контейнеров, но есть задача:

требуется поменять местами первый и последний элемент списка, вот мой вариант

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
template <typename T>
void swap(list<T> &_coll)
{
    list<T>::iterator pos = --_coll.end();                //запоминаем позицию последнего
 
    _coll.splice(_coll.end(),                                      //первый делаем последним
                 _coll,                         
                 _coll.begin());                
 
    _coll.splice(_coll.begin(),                                      //бывший последний делаем первым
                 _coll,                         
                 pos);                          
}
далеко не лучший способ... вот хотел узнать, какие еще можно найти способы, заранее буду благодарен за ваши варианты
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru