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

C++ का उपयोग करके दो शून्यों के बीच के तत्वों को हटाना

इस लेख में, हम चर्चा करेंगे कि किसी दिए गए स्ट्रिंग से दो शून्य के बीच के तत्वों को कैसे हटाया जाए जिसमें केवल शून्य और एक का वर्ण हो। अंतिम स्ट्रिंग में 0 से घिरा हुआ कोई भी वर्ण '1' नहीं होना चाहिए। उदाहरण के लिए -

Input : string = “110010”
Output : “11000”
Explanation: 1 is found between two zeros at the 4th index.

Input : string = “0010”
Output : “000”
Explanation : 1 is found between two zeros at the 2nd index.

समाधान खोजने के लिए दृष्टिकोण

हम एक सरल दृष्टिकोण लागू कर सकते हैं, यानी, लूप का उपयोग करके स्ट्रिंग को पार कर सकते हैं और पिछले और अगले तत्वों की जांच कर सकते हैं कि वे शून्य हैं या नहीं; यदि हाँ, तो वह सूचकांक शून्य नहीं है। उसके बाद, वेरिएबल को एक नई लंबाई के साथ अपडेट करें जो लंबाई को स्टोर करता है और उस स्ट्रिंग को प्रिंट करता है।

उदाहरण

#include <bits/stdc++.h>
using namespace std;

int main () {
   string str = "110010";
   int length = str.length();
   for (int i = 1; i < length - 1; i++) {
      // checking the element between two zeros
      if ((str.at (i - 1) == '0' && str.at (i + 1) == '0')) {
         // deleting the element
         // if it is found between two 0's
         str.erase (i, 1);

         i--;
         if (i > 0 && str.at (i - 1) == '0')
            i--;

            // updating the length of the string after removing the element.
         length = str.length ();
      }
   }
   cout << "String after removing elements between the two zeros: " << str;
   return 0;
}

आउटपुट

String after removing elements between the two zeros: 1100

कोड को समझना

  • एक लूप का उपयोग स्ट्रिंग के माध्यम से इंडेक्स 1 से (लंबाई -1) तक जाने के लिए किया जाता है।
  • इथ इंडेक्स के पिछले और अगले इंडेक्स की जांच करना कि क्या यह '0' के बराबर है।
  • उस वर्ण को उस अनुक्रमणिका से निकालना यदि वह '1' है।
  • लंबाई चर को नए चर के साथ अपडेट करना।
  • लूप समाप्त होने के बाद अंत में अपडेट की गई स्ट्रिंग को प्रिंट करना।

निष्कर्ष

इस लेख में, हमने '0' और '1' वर्णों वाली स्ट्रिंग से दो शून्यों के बीच के तत्वों को हटाने पर चर्चा की। हम इसे हल करने के लिए एक C++ प्रोग्राम भी देखते हैं; हम इस प्रोग्राम को किसी अन्य भाषा जैसे C, java, python, आदि में लिख सकते हैं। आशा है कि आपको यह लेख मददगार लगा होगा।


  1. सी ++ का उपयोग करके पीएल/एसक्यूएल में एक स्ट्रिंग को कैसे उलटें

    Pl/SQL एक ब्लॉक-संरचित भाषा है जो SQL की कार्यक्षमता को प्रक्रियात्मक आदेशों के साथ जोड़ती है। इस लेख में, हम किसी दिए गए स्ट्रिंग को उलटने के लिए PL/SQL में एक प्रोग्राम पर चर्चा करेंगे, उदाहरण के लिए - Input : taerGsIdoG Output : GodIsGreat Explanation : reverse string of “taerGsIdoG”

  1. C++ का उपयोग करके एक स्ट्रिंग के सबस्ट्रिंग की संख्या ज्ञात करें

    इस लेख में, आप किसी दिए गए स्ट्रिंग में बनाए जा सकने वाले सबस्ट्रिंग (गैर-रिक्त) की संख्या को खोजने के तरीकों के बारे में जानेंगे। Input : string = “moon” Output : 10 Explanation: Substrings are ‘m’, ‘o’, ‘o’, ‘n’, ‘mo’, &lsqu

  1. C++ का उपयोग करके वां सम लेंथ पैलिंड्रोम ज्ञात कीजिए

    अगर आपने कभी C++ का इस्तेमाल किया है तो आपने Palindrome Numbers के बारे में जरूर सुना होगा। तो इस गाइड में, हम उपयुक्त उदाहरणों का उपयोग करते हुए Nth सम-लेंथ पैलिंड्रोम के बारे में सब कुछ समझाएंगे। पैलिंड्रोम संख्याएँ वे संख्याएँ होती हैं जो उलटने के बाद भी वही रहती हैं। केवल संख्या ही नहीं बल्कि एक