यहां हम देखेंगे कि किसी सरणी को कैसे विभाजित किया जाए, और अंतिम स्थिति में विभाजन के बाद पहला भाग जोड़ें। मान लीजिए कि सरणी सामग्री {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} हैं। हम इस परिचय को दो भागों में काटना चाहते हैं। पहला भाग इंडेक्स 0 से 3 (विभाजन आकार 4) से है, और दूसरा भाग आराम है। अंत में पहले भाग को जोड़ने के बाद, सरणी तत्व इस तरह होंगे {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]; //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] << " ";
}
} आउटपुट
Enter split size: 4 4 5 6 7 8 9 0 1 2 3