Предмет: Информатика,
автор: mathmaster80
Задача про массив. 20 баллов!
Нужно переместить элементы массива с такого-то по какой-то в начало массива. Есть функция swap, которая меняет элементы массива местами. Например, swap(a[1],a[10]) меняет 1 и 10 элемент местами. Какой алгоритм можно придумать, чтобы это реализовать?
Ну типо у тебя есть массив 1 2 3 4 5 6, и тебя просят элементы с 2 по 4 переместить в начало. Тогда это будет 2 3 4 1 5 6
Ответы
Автор ответа:
0
Привет.
Если используешь С++, библиотека algorithm предоставляет удобную функцию swap_ranges. g++, c++11(для итератора std::begin())
#include <iostream>
#include <algorithm>
#include <iterator>
int main()
{
int arr[5]{1,2,3,4,5};
std::swap_ranges(std::begin(arr)+3, std::end(arr), std::begin(arr));
for(const auto& i : arr)
std::cout << i << " ";
}
Если используешь С++, библиотека algorithm предоставляет удобную функцию swap_ranges. g++, c++11(для итератора std::begin())
#include <iostream>
#include <algorithm>
#include <iterator>
int main()
{
int arr[5]{1,2,3,4,5};
std::swap_ranges(std::begin(arr)+3, std::end(arr), std::begin(arr));
for(const auto& i : arr)
std::cout << i << " ";
}
Интересные вопросы
Предмет: Химия,
автор: zdlydvd
Предмет: Українська література,
автор: foks512008
Предмет: Геометрия,
автор: CyXaPyk
Предмет: География,
автор: империо
Предмет: История,
автор: янушка2