এখানে আমরা দেখব কীভাবে একটি অ্যারে স্প্লিট করতে হয়, এবং স্প্লিট করার পর প্রথম অংশকে শেষে যোগ করতে হয়। ধরে নিন অ্যারে কন্টেন্টস হলো {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}। আমরা এটি দুটি অংশে কাটতে চাই। প্রথম অংশ ইনডেক্স 0 থেকে 3 (স্প্লিট সাইজ ৪), এবং দ্বিতীয় অংশ বাকি। প্রথম অংশকে শেষে যোগ করার পর অ্যারে এলিমেন্টগুলো হবে {4, 5, 6, 7, 8, 9, 0, 1, 2, 3}। এই সমস্যা সমাধানের জন্য আমরা এই অ্যালগরিদম ফলো করব।
অ্যালগরিদম
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
উদাহরণ
#include<iostream>
using namespace std;
void splitArray(int arr[], int n, int k){
for(int i = 0; i < k; i++){
int x = arr[0]; // প্রথম নম্বর নিন
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] << " ";
}
}
আউটপুট
Enter split size: 4 4 5 6 7 8 9 0 1 2 3