std :: reverse_copy в C ++ STL
Опубликовано: 31 Декабря, 2021
C ++ STL предоставляет функцию, которая копирует элементы из заданного диапазона, но в обратном порядке. Ниже приведена простая программа, демонстрирующая работу reverse_copy ().
Примеры:
Ввод: 1 2 3 4 5 6 7 8 9 10 Выход: вектор: 10 9 8 7 6 5 4 3 2 1
Функция принимает три параметра. Первые два - это диапазон элементов, которые должны быть скопированы, а третий параметр - это отправная точка, откуда элементы должны быть скопированы в обратном порядке.
// C++ program to copy from array to vector // using reverse_copy() in STL. #include <bits/stdc++.h> using namespace std; int main() { int src[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; int n = sizeof (src) / sizeof (src[0]); vector< int > dest(n); reverse_copy(src, src + n, dest.begin()); cout << "The vector is:
" ; for ( int x : dest) { cout << x << " " ; } return 0; } |
Выход:
Вектор: 10 9 8 7 6 5 4 3 2 1
Ниже приведен пример копирования из вектора в вектор.
// C++ program to copy from array to vector // using reverse_copy() in STL. #include <bits/stdc++.h> using namespace std; int main() { vector< int > src { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; vector< int > dest(src.size()); reverse_copy(src.begin(), src.end(), dest.begin()); cout << "The vector is:
" ; for ( int x : dest) { cout << x << " " ; } return 0; } |
Выход:
Вектор: 10 9 8 7 6 5 4 3 2 1
Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .