Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

दिए गए ऐरे में डुप्लीकेट खोजें जब तत्व एक रेंज तक सीमित न हों C++ में

मान लीजिए हमारे पास N पूर्णांकों का एक ऐरे है। यहां हम दिए गए ऐरे के डुप्लीकेट प्रिंट करेंगे। यदि ऐसा कोई डुप्लीकेट मौजूद नहीं है, तो -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

  1. - C++ में जांचें कि दी गई सरणी में k दूरी के भीतर डुप्लिकेट तत्व हैं या नहीं

    यहां हम देखेंगे कि कैसे जांचें कि एक असॉर्टेड सरणी में एक-दूसरे से k दूरी के भीतर डुप्लिकेट तत्व हैं या नहीं। मान लीजिए तत्वों की एक सूची है {1, 2, 3, 1, 4, 5}, यहां यदि k = 3 है, तो प्रोग्राम true लौटाएगा, क्योंकि दो 1s के बीच की दूरी 3 है।हम इसे हैश टेबल का उपयोग करके हल करेंगे। चरण निम्नलिखित हों

  1. - C++ में जांचें कि दी गई सरणी युग्मवार सॉर्टेड है या नहीं

    हमारे पास n तत्वों की एक सरणी A है। हमें जांचना है कि सरणी युग्मवार सॉर्टेड (pairwise sorted) है या नहीं। मान लीजिए सरणी {8, 10, 18, 20, 5, 15} जैसी है। यह युग्मवार सॉर्टेड है क्योंकि (8, 10), (18, 20), (5, 15) सॉर्टेड हैं। यदि सरणी में विषम संख्या में तत्व हैं, तो अंतिम को नजरअंदाज कर दिया जाएगा।दृ

  1. - C++ में दिए गए सरणी के एलिमेंट्स के फैक्टोरियल का GCD खोजें

    मान लीजिए हमारे पास N एलिमेंट्स वाली एक सरणी A है। हमें सरणी के सभी एलिमेंट्स के फैक्टोरियल का GCD निकालना है। मान लीजिए एलिमेंट्स {3, 4, 8, 6} हैं, तो फैक्टोरियल का GCD 6 होगा। यहां हम ट्रिक देखेंगे। चूंकि दो संख्याओं का GCD वह सबसे बड़ी संख्या है जो दोनों को विभाजित करती है, तो दो संख्याओं के फैक्