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

सी ++ में क्रमबद्ध सरणी में के-वें लापता तत्व

इस ट्यूटोरियल में, हम एक प्रोग्राम लिखने जा रहे हैं जो दिए गए सॉर्ट किए गए ऐरे में k-th मिसिंग एलिमेंट का पता लगाता है।

दिए गए क्रमबद्ध सरणी में न्यूनतम से अधिकतम तक अनुपलब्ध k-वें संख्या ज्ञात कीजिए। आइए समस्या को हल करने के लिए चरणों को देखें।

  • सॉर्ट किए गए ऐरे को इनिशियलाइज़ करें।
  • दो चर अंतर शुरू करें और k से गिनें।
  • सरणी पर पुनरावृति करें।
    • यदि वर्तमान तत्व अगले तत्व के बराबर नहीं है।
      • दो संख्याओं के बीच अंतर ज्ञात कीजिए।
      • यदि अंतर k से अधिक या उसके बराबर है, तो वर्तमान तत्व प्लस काउंट लौटाएं।
      • अन्यथा गिनती से अंतर घटाएं।
  • वापसी -1.

उदाहरण

आइए कोड देखें।

#include <bits/stdc++.h>
using namespace std;
int findMissingNumber(int arr[], int k, int n) {
   int difference, count = k;
   for(int i = 0 ; i < n - 1; i++) {
      if ((arr[i] + 1) != arr[i + 1]) {
         difference = arr[i + 1] - arr[i] - 1;
         if (difference >= count) {
            return arr[i] + count;
         }else {
            count -= difference;
         }
      }
   }
   return -1;
}
int main() {
   int arr[] = { 1, 2, 3, 5, 10 }, n = 5;
   int k = 3;
   cout << findMissingNumber(arr, k, n) << endl;
   return 0;
}

आउटपुट

यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।

7

निष्कर्ष

यदि ट्यूटोरियल में आपके कोई प्रश्न हैं, तो उनका टिप्पणी अनुभाग में उल्लेख करें।


  1. सी ++ में क्रमबद्ध और घुमाए गए सरणी में अधिकतम तत्व

    विवरण किसी अज्ञात बिंदु पर घुमाए गए अलग-अलग तत्वों की एक क्रमबद्ध सरणी को देखते हुए, कार्य इसमें अधिकतम तत्व ढूंढना है। उदाहरण यदि इनपुट सरणी {30, 40, 50, 10, 20} है तो अधिकतम तत्व 50 है। एल्गोरिदम अधिकतम तत्व एकमात्र ऐसा तत्व है जिसका अगला तत्व उससे छोटा है। यदि कोई अगला छोटा तत्व नहीं है, तो को

  1. सी ++ में एम बार संयोजित सरणी से के-वें न्यूनतम तत्व खोजें

    मान लें कि हमारे पास एक सरणी A है, और अन्य दो पूर्णांक K और M हैं। हमें सरणी को M संख्या से कई बार जोड़ने के बाद Kth न्यूनतम तत्व खोजना होगा। मान लीजिए कि एरे ए =[3, 1, 2], के =4 और एम =3 की तरह है, तो ए को 3 बार जोड़ने के बाद, यह [3, 1, 2, 3, 1, 2, 3, 1 होगा। , 2], चौथा सबसे छोटा तत्व यहां 2 है। इ

  1. C++ में क्रमबद्ध सरणी में अधिकांश तत्व की जाँच करें

    7/2 देख सकते हैं। हम सरणी में x की घटनाओं की गणना कर सकते हैं, और यदि संख्या n/2 से अधिक है, तो उत्तर सही होगा, अन्यथा गलत। उदाहरण #include <iostream> #include <stack> using namespace std; bool isMajorityElement(int arr[], int n, int x){    int freq = 0;    for(int i