ধরুন, আমাদের দুটি অ্যারে A এবং B আছে, অ্যারে A-তে n উপাদান রয়েছে। দ্বিতীয় অ্যারে বি-তে A-এর সমস্ত উপাদান রয়েছে, কিন্তু সেগুলি এলোমেলো করা হয়েছে এবং একটি উপাদান সরানো হয়েছে। আমাদের অনুপস্থিত উপাদানগুলি খুঁজে বের করতে হবে। সুতরাং A =[4, 8, 1, 3, 7], এবং B =[7, 4, 3, 1] হলে, আউটপুট 8 হয়।
এটি XOR কৌশল ব্যবহার করে সমাধান করা যেতে পারে। প্রতিটি উপাদানের সম্মিলিত ঘটনা দুবার, একটি A তে এবং অন্যটি B তে, একটি উপাদান ছাড়া যার শুধুমাত্র A তে একটি একক ঘটনা রয়েছে। যেমন আমরা জানি যে x XOR x =0, তাই যদি আমরা উভয় উপাদানের মধ্যে XOR সম্পাদন করি অ্যারে ফলাফল অনুপস্থিত নম্বর হবে.
উদাহরণ
#include<iostream>
using namespace std;
int FindMissingElement(int A[], int B[], int n) {
int min_element = 0;
for (int i = 0; i < n; i++)
min_element = min_element ^ A[i];
for (int i = 0; i < n - 1; i++)
min_element = min_element ^ B[i];
return min_element;
}
int main() {
int A[] = {4, 8, 1, 3, 7};
int B[] = {7, 4, 3, 1};
int n = sizeof(A) / sizeof(A[0]);
cout << "Missing element: " << FindMissingElement(A, B, n);
} আউটপুট
Missing element: 8