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



Here we will see how to split an array, and add the first part after splitting at the end position. Suppose the array contents are {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}. We want to cut this intro two parts. The first part is from index 0 to 3 (split size 4), and second part is rest. After adding the first part at the end, the array elements will be like this {4, 5, 6, 7, 8, 9, 0, 1, 2, 3}. To solve this problem, we will follow this algorithm.

Algorithm

splitArray(arr, n, k)

begin    for i := 0 to k, do       x := arr[0]       for j := 0 to n-2, do          arr[j] := arr[j+1]       done       arr[n-1] := x    done end

Example

 Live Demo

#include<iostream> using namespace std; void splitArray(int arr[], int n, int k){    for(int i = 0; i<k; i++){       int x = arr[0]; //take the first number       for(int j = 0; j<= n-2; j++){          arr[j] = arr[j+1];       }       arr[n-1] = x;    } } main() {    int data[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};    int n = sizeof(data)/sizeof(data[0]);    int i;    cout << "Enter split size: ";    cin >> i;    splitArray(data, n, i);    for(int i = 0; i <n;i++){       cout << data[i] << " ";    } }

Output

Enter split size: 4 4 5 6 7 8 9 0 1 2 3
Updated on: 2019-07-30T22:30:26+05:30

534 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements