Open In App

C++ Program to Split the array and add the first part to the end

Last Updated : 05 Dec, 2018
Improve
Improve
Like Article
Like
Save
Share
Report

There is a given an array and split it from a specified position, and move the first part of array add to the end.

Examples:

Input : arr[] = {12, 10, 5, 6, 52, 36}
            k = 2
Output : arr[] = {5, 6, 52, 36, 12, 10}
Explanation : Split from index 2 and first 
part {12, 10} add to the end .

Input : arr[] = {3, 1, 2}
           k = 1
Output : arr[] = {1, 2, 3}
Explanation : Split from index 1 and first
part add to the end.




// CPP program to split array and move first
// part to end.
#include <bits/stdc++.h>
using namespace std;
  
void splitArr(int arr[], int n, int k)
{
    for (int i = 0; i < k; i++) {
  
        // Rotate array by 1.
        int x = arr[0];
        for (int j = 0; j < n - 1; ++j)
            arr[j] = arr[j + 1];
        arr[n - 1] = x;
    }
}
  
// Driver code
int main()
{
    int arr[] = { 12, 10, 5, 6, 52, 36 };
    int n = sizeof(arr) / sizeof(arr[0]);
    int position = 2;
  
    splitArr(arr, 6, position);
  
    for (int i = 0; i < n; ++i)
        printf("%d ", arr[i]);
  
    return 0;
}


Output:

5 6 52 36 12 10

Please refer complete article on Split the array and add the first part to the end for more details!


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads