একটি পূর্ণসংখ্যার অ্যারে দেওয়া থাকলে, সেটিকে এমনভাবে রি-অ্যারেঞ্জ করতে হবে যাতে ইভেন ইনডেক্স (০-বেসড) এর এলিমেন্টগুলো আড ইনডেক্সের চেয়ে ছোট হয়।
উদাহরণ
ইনপুট − arr[] = {2,1,4,3,6,5,8,7}
আউটপুট − 1 4 2 6 3 8 5 7
ইনপুট − arr[] = {10,-1,7,-5,6,-9}
আউটপুট − -1 10 -5 7 -9 6
প্রোগ্রামে ব্যবহৃত পদ্ধতি
অ্যারে প্রিন্ট করুন।
Rearrangement(arr, size)ফাংশন কল করুন।ফাংশনে
for i=0 to size-2:
• যদিi%2==0(ইভেন ইনডেক্স) এবংarr[i] > arr[i+1]হয়,swap(arr[i], arr[i+1])।
• যদিi%2!=0(আড ইনডেক্স) এবংarr[i] < arr[i+1]হয়,swap(arr[i], arr[i+1])।ফলাফল প্রিন্ট করুন।
উদাহরণ কোড
#include <iostream>
using namespace std;
void Rearrangement(int* arr, int size){
for(int i = 0; i < size - 1; i++){
if(i % 2 == 0){
if(arr[i] > arr[i + 1]){
swap(arr[i], arr[i + 1]);
}
}
if(i % 2 != 0){
if(arr[i] < arr[i + 1]){
swap(arr[i], arr[i + 1]);
}
}
}
}
int main(){
int arr[] = {2, 1, 4, 3, 6, 5, 8, 7};
int size = sizeof(arr) / sizeof(arr[0]);
cout << "Array before Arrangement: ";
for (int i = 0; i < size; i++) cout << arr[i] << " ";
Rearrangement(arr, size);
cout << "\nRearrangement of an array such that even index elements are smaller and odd index elements are greater is: ";
for(int i = 0; i < size; i++) cout << arr[i] << " ";
return 0;
}
আউটপুট
উপরের কোড রান করলে নিচের আউটপুট পাওয়া যাবে:
Array before Arrangement: 2 1 4 3 6 5 8 7 Rearrangement of an array such that even index elements are smaller and odd index elements are greater is: 1 4 2 6 3 8 5 7