মনে করুন আমাদের তিনটি অ্যারে কিছু উপাদানসহ আছে। আমাদের এই তিনটি অ্যারেতে উপস্থিত সব সাধারণ উপাদান বের করতে হবে। মনে করুন উপাদানগুলো হল [10, 12, 15, 20, 25], [10, 12, 13, 15] এবং [10, 12, 15, 24, 25, 26], তবে এই তিনটি অ্যারেতে সাধারণ উপাদানগুলো হল 10, 12 এবং 15।
মনে করুন অ্যারে A1-এ বর্তমান ট্রাভার্সড উপাদান x, A2-এ y এবং A3-এ z। এদের জন্য নিচের কেসগুলো হতে পারে -
- যদি x, y, এবং z একই হয়, তবে আমরা যেকোনো একটি প্রিন্ট করব, এবং প্রতিটি অ্যারের উপাদান ১ বাড়াব
- যখন x < y, তবে A1-এ آگে বড়ব কারণ x সাধারণ উপাদান হতে পারে না
- যখন x > z এবং y > z, তবে A3-এ آگে বড়ব, কারণ z সাধারণ উপাদান হতে পারে না।
উদাহরণ
#include <iostream>
using namespace std;
void findCommonValues(int A1[], int A2[], int A3[], int n1, int n2, int n3) {
int i = 0, j = 0, k = 0;
while (i < n1 && j < n2 && k < n3) {
if (A1[i] == A2[j] && A2[j] == A3[k]) {
cout << A1[i] << " "; i++; j++; k++;
}
else if (A1[i] < A2[j])
i++;
else if (A2[j] < A3[k])
j++;
else
k++;
}
}
int main() {
int A1[] = {10, 12, 15, 20, 25};
int n1 = sizeof(A1) / sizeof(A1[0]);
int A2[] = {10, 12, 13, 15};
int n2 = sizeof(A2) / sizeof(A2[0]);
int A3[] = {10, 12, 15, 24, 25, 26};
int n3 = sizeof(A3) / sizeof(A3[0]);
cout << "Common elements are: ";
findCommonValues(A1, A2, A3, n1, n2, n3);
}
আউটপুট
Common elements are: 10 12 15