How to shift vector elements to right by N positions in C++

1 Answer

0 votes
#include <iostream>
#include <vector>
#include <algorithm>
  
int main()
{   
    std::vector<int> v = {1, 2, 3, 4, 5, 6, 7, 8, 9};
  
    int N = 3;
     
    // rotate to right
    std::rotate(v.rbegin(), v.rbegin() + N, v.rend());
  
    for (int i = 0; i < v.size(); i++) {
        std::cout << v[i] <<  " ";
    }
}    
  
   
   
   
   
/*
run:
   
7 8 9 1 2 3 4 5 6 
   
*/

 



answered Sep 11, 2022 by avibootz

Related questions

1 answer 142 views
1 answer 144 views
1 answer 113 views
1 answer 171 views
1 answer 154 views
1 answer 154 views
...