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

C++ प्रोग्राम: सरणी में इनवर्जन गिनें

परिचय

इनवर्जन काउंट का अर्थ है सरणी को सॉर्ट करने के लिए आवश्यक स्वैप की संख्या। यदि सरणी सॉर्टेड है तो इनवर्जन काउंट = 0। यदि सरणी रिवर्स ऑर्डर में सॉर्टेड है तो इनवर्जन काउंट = अधिकतम।

एल्गोरिदम

CountInversionArray फ़ंक्शन में सरणी a[] और n = तत्वों की संख्या लें। काउंटर c := 0 प्रारंभ करें। 0 से n-1 तक i के लिए लूप चलाएं, i+1 से n तक j के लिए नेस्टेड लूप चलाएं। यदि a[i] > a[j] तो काउंट 1 बढ़ाएं। अंत में काउंट लौटाएं।

उदाहरण कोड

#include <iostream>
using namespace std;

int CountInversionArray(int a[], int n) {
    int i, j, c = 0;
    for (i = 0; i < n; i++) {
        for (j = i+1; j < n; j++)
            if (a[i] > a[j])
                c++;
    }
    return c;
}

int main() {
    int n, i;
    cout << "\nतत्वों की संख्या दर्ज करें: ";
    cin >> n;
    int a[n];
    for (i = 0; i < n; i++) {
        cout << "तत्व " << i+1 << ": ";
        cin >> a[i];
    }
    cout << "\nसरणी में इनवर्जन की संख्या: " << CountInversionArray(a, n);
    return 0;
}

आउटपुट

तत्वों की संख्या दर्ज करें: 5
तत्व 1: 3
तत्व 2: 2
तत्व 3: 7
तत्व 4: 6
तत्व 5: 1
सरणी में इनवर्जन की संख्या: 6
  1. C++ में सरणी के एलिमेंट्स का गुणनफल C++ में सरणी के एलिमेंट्स का गुणनफल

    पूर्णांक एलिमेंट्स की एक सरणी दी गई है और कार्य सरणी के एलिमेंट्स को गुणा करना और प्रदर्शित करना है। उदाहरण इनपुट-: arr[]={1,2,3,4,5,6,7} आउटपुट-: 1 x 2 x 3 x 4 x 5 x 6 x 7 = 5040 इनपुट-: arr[]={3, 4,6, 2, 7, 8, 4} आउटपुट-: 3 x 4 x 6 x 2 x 7 x 8 x 4 = 32256 नीचे दिए गए प्रोग्राम में उपयोग किया गया द

  1. - C++ प्रोग्राम: काउंटिंग सॉर्ट लागू करना

    काउंटिंग सॉर्ट एक स्थिर सॉर्टिंग तकनीक है, जिसका उपयोग छोटी संख्याओं की कुंजियों के अनुसार ऑब्जेक्ट्स को सॉर्ट करने के लिए किया जाता है। यह उन कुंजियों की संख्या गिनता है जिनके कुंजी मान समान हैं। यह सॉर्टिंग तकनीक तब कुशल होती है जब विभिन्न कुंजियों के बीच अंतर इतना बड़ा नहीं होता, अन्यथा यह स्पेस

  1. - C++ में पॉइंटर का उपयोग करके सरणी के एलिमेंट्स एक्सेस करने का प्रोग्राम

    पॉइंटर्स वेरिएबल्स के मेमोरी स्थान या पते को संग्रहीत करते हैं। दूसरे शब्दों में, पॉइंटर्स एक मेमोरी स्थान को संदर्भित करते हैं और उस मेमोरी स्थान पर संग्रहीत मान को प्राप्त करना पॉइंटर को डीरेफरेंस करना कहलाता है। एक प्रोग्राम जो सरणी के एकल एलिमेंट को एक्सेस करने के लिए पॉइंटर्स का उपयोग करता है,