मान लीजिए कि हमारे पास एन पूर्णांकों की एक सरणी है। यहां हम दिए गए ऐरे के डुप्लीकेट प्रिंट करेंगे। यदि ऐसा कोई डुप्लिकेट मौजूद नहीं है, तो -1 लौटाएं। तो अगर सरणी [12, 15, 12, 3, 6, 12, 3, 48, 56, 8, 48] की तरह है, तो डुप्लिकेट हैं:[12, 3, 48]
यहां हम C++ में अनियंत्रित मानचित्र का उपयोग करेंगे। तो सबसे पहले जब एक तत्व लिया जाता है, तो जांचें कि वह मानचित्र में मौजूद है या नहीं, यदि यह मौजूद है, तो बस उसे डुप्लिकेट के रूप में प्रिंट करें, अन्यथा बस उसे मानचित्र में जोड़ें।
उदाहरण
#include<iostream> #include<unordered_map> using namespace std; void displayDuplicates(int arr[], int n) { unordered_map<int, int> occurrence; for (int i=0; i<n; i++) occurrence[arr[i]]++; bool duplicate = false; unordered_map<int, int>:: iterator itr; for (itr=occurrence.begin(); itr!=occurrence.end(); itr++) { if (itr->second > 1) { cout << itr->first << " "; duplicate = true; } } if (duplicate == false) cout << "-1"; } int main() { int arr[] = {12, 15, 12, 3, 6, 12, 3, 48, 56, 8, 48}; int n = sizeof(arr) / sizeof(arr[0]); cout << "Duplicate elements are: "; displayDuplicates(arr, n); }
आउटपुट
Duplicate elements are: 12 3 48