Home » C++ STL

How to reverse vector elements in C++ STL?

C++ STL | reversing vector elements: Here, we are going to learn how to reverse elements of a vector using C++ STL program?
Submitted by IncludeHelp, on May 18, 2019

Given a vector and we have to reverse their element using C++ STL program.

Reverse a vector

To reverse vector elements, we can use reverse() function which is defined in <algorithm> header in C++ standard template library. It accepts the range of the iterators in which reverse operation to be performed and reverses the elements between the given range.

Note: To use vector – include <vector> header, and to use reverse() function – include <algorithm> header or we can simply use <bits/stdc++.h> header file.

Syntax:

    reverse(iterator start, iterator end);

Here, start_position, iterator end_position are the iterators pointing to the start and end elements in a container to be reversed.

Example:

    Input:
    vector<int> v1{ 10, 20, 30, 40, 50, 25, 15 };

    reverse(v1.begin(), v1.end());
    
    Output:
    15, 25, 50, 40, 30, 20, 10

C++ STL program to reverse vector elements

//C++ STL program to reverse vector elements 
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;

int main()
{
    //vector
    vector<int> v1{ 10, 20, 30, 40, 50 };

    //printing elements
    cout << "before reversing vector elements..." << endl;
    for (int x : v1)
        cout << x << " ";
    cout << endl;

    //reversing vector's all elements
    reverse(v1.begin(), v1.end());

    //printing elements
    cout << "after reversing vector elements..." << endl;
    for (int x : v1)
        cout << x << " ";
    cout << endl;

    return 0;
}

Output

before reversing vector elements...
10 20 30 40 50
after reversing vector elements...
50 40 30 20 10





Comments and Discussions

Ad: Are you a blogger? Join our Blogging forum.





Languages: » C » C++ » C++ STL » Java » Data Structure » C#.Net » Android » Kotlin » SQL
Web Technologies: » PHP » Python » JavaScript » CSS » Ajax » Node.js » Web programming/HTML
Solved programs: » C » C++ » DS » Java » C#
Aptitude que. & ans.: » C » C++ » Java » DBMS
Interview que. & ans.: » C » Embedded C » Java » SEO » HR
CS Subjects: » CS Basics » O.S. » Networks » DBMS » Embedded Systems » Cloud Computing
» Machine learning » CS Organizations » Linux » DOS
More: » Articles » Puzzles » News/Updates


© https://www.includehelp.com some rights reserved.