मान लीजिए कि हमारे पास कुछ तत्वों के साथ तीन सरणियाँ हैं। हमें इन तीनों सरणियों में मौजूद सभी सामान्य तत्वों को खोजना है। मान लीजिए कि ये तत्व [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 समान हैं, तो हम उनमें से किसी को भी प्रिंट करेंगे, और प्रत्येक सरणी तत्वों को 1
बढ़ा देंगे। -
जब 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