Answers for "how to rotate array in cpp"

C++
2

rotate in cpp

vector<int> v{1,2,3,4,5,6,7,8,9};

int rot = 2;
//rotate left
rotate(v.begin(), v.begin() + rot, v.end()); //vector: 3 4 5 6 7 8 9 1 2
//rotate right
rotate(v.begin(), v.begin()+v.size()-rot, v.end()); //vector: 8 9 1 2 3 4 5 6 7
Posted by: Guest on October-20-2021
0

rotate array cpp

###############################
# Rotate array clockwise
###############################

vector<int> kClockwiseRotate(vector<int> a, int k) {
    int n = a.size() - 1;
  
    while (k != 0) {
      int x = a[n];
      
      for (int i = n; i >= 0; i--) {
        a[i + 1] = a[i];
        a[i] = x;
      }
      k--;
    }
    return a;
  }

###############################
# Rotate array anti-clockwise
###############################

vector<int> kAntiClockwiseRotate(vector<int> a, int k) {
    int n = a.size() - 1;
  
    while (k != 0) { 
	 for (int i = 0; i < n; i++) {
      int x = a[i + 1];
      a[i + 1] = a[i];
      a[i] = x;
    }
      k--;
    }
    return a;
 }
Posted by: Guest on December-29-2021

Browse Popular Code Answers by Language