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

सरणी में प्रीफिक्स की अधिकतम घटना ज्ञात करें C++ में


इस समस्या में, हमें लोअरकेस में सभी वर्णों की एक सरणी दी गई है। हमारा कार्य सरणी में प्रीफिक्स की अधिकतम घटना ज्ञात करना है।

हमें उन गैर-रिक्त प्रीफिक्स की घटना गिननी है जिनकी घटना संख्या अधिकतम है।

उदाहरण से समझते हैं:

इनपुट: स्ट्रिंग = "xyyzkxyyzk" आउटपुट: 2

समाधान दृष्टिकोण

तर्क यह कल्पना करना है कि एक सरणी का प्रीफिक्स हमेशा, स्पष्ट रूप से, स्ट्रिंग के पहले वर्ण को समाहित करता है और इसलिए इसकी दोहराई गई घटनाएं भी। और एक स्ट्रिंग का पहला वर्ण स्पष्ट रूप से सबसे कम वर्णों वाला एक प्रीफिक्स है। तो अधिकतम घटित होने वाला प्रीफिक्स निश्चित रूप से स्ट्रिंग का पहला वर्ण होगा। तो अब काम स्ट्रिंग में पहले वर्ण की गिनती ढूंढने तक सीमित हो गया है।

एल्गोरिथम

  • लोअरकेस वर्णमाला की एक स्ट्रिंग पढ़ें।

  • आवश्यक प्रीफिक्स की गिनती लौटाने के लिए एक फंक्शन बनाएं।

  • गिनती = 0 आरंभ करें।

  • स्ट्रिंग के पहले वर्ण की आवृत्ति ज्ञात करें।

  • स्ट्रिंग के पहले वर्ण की आवृत्ति प्रिंट करें जो अंततः स्ट्रिंग के एक प्रीफिक्स की अधिकतम घटना होगी।

उदाहरण

हमारे समाधान के कार्य को दर्शाने वाला प्रोग्राम:

#include <iostream> using namespace std; int findPrefixOccurence(string str){    char chars = str[0];    int countOccrence = 0;    for (int i = 0; i < str.length(); i++) {       if (str[i] == chars)          countOccrence++;    }    return countOccrence; } int main(){    string str = "xyyzxxyyzxyxx";    cout<<"The maximum occurence of prefix in the array is "<<findPrefixOccurence(str);    return 0; }

आउटपुट

The maximum occurence of prefix in the array is 6

  1. - C++ प्रोग्राम: दिए गए सीक्वेंस के सबसे लंबे प्रीफिक्स मैचिंग को खोजना

    यहां हम एक C++ प्रोग्राम पर चर्चा करेंगे जो एक सेट ऑफ सीक्वेंस में सभी सीक्वेंस के लिए कॉमन सबसे लंबी सबसीक्वेंस खोजता है। एल्गोरिदम Begin स्ट्रिंग्स की ऐरे को इनपुट के रूप में लें। function matchedPrefixtill(): स्ट्रिंग s1 और s2 के बीच मैच्ड प्रीफिक्स खोजें: n1 = स्ट्रिंग s1 की लं

  1. - C++ में स्ट्रिंग को कैरेक्टर ऐरे में कन्वर्ट करना

    यह C++ में स्ट्रिंग को कैरेक्टर ऐरे में कन्वर्ट करने का एक प्रोग्राम है। यह कई तरीकों से किया जा सकता है: विधि 1: एल्गोरिदम Begin स्ट्रिंग m को मान असाइन करें। i = 0 से sizeof(m) तक कैरेक्टर ऐरे प्रिंट करें। End उदाहरण कोड #include <iostream> #include <string.h> using name

  1. - C++ में स्ट्रिंग्स का ऐरे

    C++ में स्ट्रिंग कीवर्ड का उपयोग करके स्ट्रिंग्स का ऐरे बनाया जा सकता है। यहां हम इस दृष्टिकोण का उपयोग करके एक C++ प्रोग्राम पर चर्चा कर रहे हैं। एल्गोरिदम Begin स्ट्रिंग कीवर्ड द्वारा ऐरे के तत्वों को इनिशियलाइज़ करें। और स्ट्रिंग को इनपुट के रूप में लें। ऐरे प्रिंट करें। End. उदाहरण को