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

सी ++ में एक स्ट्रिंग में विशिष्ट सबस्ट्रिंग की संख्या की गणना करें

समस्या के अनुसार हमें एक स्ट्रिंग स्ट्र दिया जाता है, हमें दिए गए स्ट्रिंग में सभी सबस्ट्रिंग को गिनना चाहिए। सबस्ट्रिंग एक स्ट्रिंग है जो पहले से मौजूद स्ट्रिंग का एक हिस्सा है जिसका आकार मौजूदा स्ट्रिंग से छोटा या उसके बराबर हो सकता है।

आइए उदाहरणों की मदद से समस्या और उसके समाधान को समझते हैं।

इनपुट - str ="wxyz";

आउटपुट − विशिष्ट सबस्ट्रिंग की संख्या है:10

स्पष्टीकरण - गिने जाने वाले विशिष्ट सबस्ट्रिंग हैं -

wxyz, wxy, wx, w, xyz, xy, x, yz, y, z so their count is 10

इनपुट - str ="zzzz"

आउटपुट − विशिष्ट सबस्ट्रिंग की संख्या है:4

स्पष्टीकरण - गिने जाने वाले विशिष्ट सबस्ट्रिंग हैं -

zzzz, zzz, zz, z

निम्नलिखित कार्यक्रम में उपयोग किया गया दृष्टिकोण इस प्रकार है

  • इनपुट के रूप में एक स्ट्रिंग str लें।

  • एक खाली unordered_set "myset" घोषित करें।

  • लूप मैं 0 से 1 कदम आगे बढ़ता हूं जब तक कि मैं स्ट्रिंग के आकार से छोटा नहीं होता।

    • एक नया स्ट्रिंग स्पेस "" (रिक्त) घोषित करें।

    • लूप j उस ​​समय से शुरू होता है जब मैं 1 कदम आगे बढ़ता हूं जब तक कि j स्ट्रिंग के आकार से छोटा नहीं होता।

    • str[j]

      . के साथ प्रत्येक चरण पर स्थान के मान को संयोजित करें
    • myset में जगह डालें।

  • उत्तर के रूप में str का आकार प्रिंट करें।

उदाहरण

#include<iostream>
#include<unordered_set>
using namespace std;
int main(){
   string str = "aaaa";
   unordered_set<string> myset;
   int i, j;
   for (i = 0; i < str.size(); ++i){
      string space = "";
      for (j = i; j < str.size(); ++j){
         space = space + str[j];
         myset.insert(space);
       }
   }
   cout <<"count of distinct substring is: " <<str.size();
   return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो हमें निम्न आउटपुट मिलेगा -

count of distinct substring is: 4

  1. सबस्ट्रिंग को दूसरे सबस्ट्रिंग से बदलें C++

    यहां हम देखेंगे कि सबस्ट्रिंग को दूसरे सबस्ट्रिंग से कैसे बदला जाए। यह स्ट्रिंग के उस हिस्से को बदल देता है जो कैरेक्टर पॉज़ से शुरू होता है और लेन कैरेक्टर तक फैला होता है। बदलें फ़ंक्शन की संरचना नीचे की तरह है: string& replace (size_t pos, size_t len, const 

  1. स्ट्रिंग में मौजूद सबस्ट्रिंग की संख्या गिनने के लिए पायथन प्रोग्राम

    मान लीजिए कि हमारे पास एक स्ट्रिंग s और एक सबस्ट्रिंग t है। हमें यह गिनना है कि t कितनी बार s में आता है। इसलिए, यदि इनपुट s =abaabcaabababaab, t =aab जैसा है, तो आउटपुट 3 होगा क्योंकि सबस्ट्रिंग ab(aab)c(aab)abab(aab) हैं। इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - सीएनटी:=0 i के लिए 0 से

  1. पायथन में एक स्ट्रिंग के हर विकल्प के अलग-अलग वर्णों की संख्या की गणना करने का कार्यक्रम

    मान लीजिए कि हमारे पास एक लोअरकेस स्ट्रिंग s है, हमें s के प्रत्येक विकल्प में अलग-अलग वर्णों की संख्या का योग ज्ञात करना है। अगर उत्तर बहुत बड़ा है तो परिणाम मोड 10^9+7 लौटाएं। इसलिए, यदि इनपुट s =xxy जैसा है, तो आउटपुट 6 होगा, क्योंकि सबस्ट्रिंग और उनकी गणनाएँ हैं - एक्स :1 एक्स :1 वाई :