Open In App

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

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!


Last Updated : 05 Dec, 2018
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads