Форум программистов, компьютерный форум CyberForum.ru

Вектор: merge, vector.swap - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Упорядоченный массив http://www.cyberforum.ru/cpp-beginners/thread543747.html
Здравствуйте, можете помочь с задачей :"Дано целочисленный массив из n элементов, упорядоченный по возрастанию. Добавить в массив целое a, так чтобы новый массив из n +1- го элемента остался упорядоченным." ? Заранее спасибо.
C++ Кривая Пеано Доброго времени суток, может кто нибудь подсказать или натолкнуть на мысль, как можно реализовать кривую Пеано на c++ Добавлено через 1 час 49 минут #include <iostream> #include <string> #include <vector> #include <sstream> using namespace std; #define numRowsA 3 http://www.cyberforum.ru/cpp-beginners/thread543724.html
C++ несколько простых вопросов
1) у каждого процесса свою адресное пространство(то есть несколько процессов могут начинаться допустим с адреса 0x401000)? 2) при загрузке dll библиотек ,а также при добавление lib библиотек они загружают все функции? 3) можно ли WriteMemoryProcess , заменить memcpy(как вычислить именно адресное пространство процесса в который мы хотим сделать инжект(записать данные))? 4) как вычислить...
C++ Задать массив размерностью 3, элементами которого являются структура "Владелец автомобиля"
Помогите никак не могу написать программу на С. Задать массив размерностью 3, элементами которого являются структура "Владелец автомобиля": фамилия, имя, отчество, номер автомобиля, номер техпаспорта, отделение регистрации ГАИ. Прочитать в переменные 1-е и 3-е поля 2-го элемента массива, значения полей вывести на экран.
C++ Cи++ http://www.cyberforum.ru/cpp-beginners/thread543695.html
Дана числовая последовательность и некоторое число e. Найти наименьший номер члена последовательности, для которого выполняется условие |A(n)-A(n-1)|<e . Вывести на экран этот номер и все элементы A(i), где i=1,2,…,n. A(n)=2+1/(A(n-1)) ; A(1)=2
C++ Найти наименьший номер члена последовательности, для которого выполняется условие Здравствуйте! помогите пожалуйста решить : Дана числовая последовательность и некоторое число . Найти наименьший номер члена последовательности, для которого выполняется условие . Вывести на экран этот номер и все элементы , где i=1,2,…,n. Заранее благодарна Добавлено через 7 минут : Дана числовая последовательность и некоторое число e. Найти наименьший номер члена последовательности,... подробнее

Показать сообщение отдельно
IcyWind
8 / 8 / 2
Регистрация: 19.09.2011
Сообщений: 268

Вектор: merge, vector.swap - C++

09.04.2012, 20:50. Просмотров 604. Ответов 0
Метки (Все метки)

Идея такая:
есть вектор 2 половину отсортированы
можно сделать inplace_merge, но
комбинация merge + выделение памяти под новый вектор работает быстрее, поэтому делаю так
C++
1
2
3
4
5
{
            vector<int> helper(v1.size());
            merge(v1.begin(),p1_ave,p1_ave,v1.end(),helper.begin());
            v1.swap(helper);                
        }
Вопрос по swap, что он именно делает?
что-то типо
C++
1
2
v1 = &helper;
helper = &v1;
(знаю, что так писать нельзя) только одновременно?
а как тогда будет работать v1 = helper?
присваивание будет по ссылке?

Добавлено через 1 минуту
Как лучше производить это действие, если старый вектор мне не нужен, а новый нужно записать в ту же переменную, где раньше было 2 отсортированные части.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 10:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru