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

सी ++ में एक स्ट्रिंग में पहला दोहराया शब्द खोजें

इस समस्या में, हम अल्पविराम से अलग किए गए शब्दों से मिलकर एक स्ट्रिंग स्ट्रिंग हैं। हमारा काम है एक स्ट्रिंग में दोहराए गए पहले शब्द को ढूंढना

हमें स्ट्रिंग में दोहराए जाने वाले पहले शब्द 'दो रिक्त स्थान के बीच की स्ट्रिंग' को खोजने की जरूरत है।

समस्या को समझने के लिए एक उदाहरण लेते हैं,

Input : str = "C program are easy to program"
Output : program

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

समस्या का एक सरल समाधान हैशमैप डेटा संरचना का उपयोग करना है। पहले दोहराए गए शब्द को खोजने के लिए, हम प्रत्येक शब्द और उसकी गिनती (स्ट्रिंग में दिखाई देने की संख्या) को हैशपैप में संग्रहीत करेंगे। इसके लिए हम जाँचते रहेंगे कि वर्तमान शब्द मौजूद है या नहीं।

फिर हम पहले काम को हैशमैप में एक से अधिक घटनाओं की गिनती के साथ प्रिंट करेंगे।

उदाहरण

हमारे समाधान की कार्यप्रणाली को दर्शाने के लिए कार्यक्रम

#include <bits/stdc++.h>
using namespace std;
string findFirstRepeatWord(string str){
   istringstream iss(str);
   string word;
   unordered_map<string, int> wordCountMap;
   while (getline(iss, word, ' ')) {
      if (wordCountMap.find(word) != wordCountMap.end())
         wordCountMap[word] ++;
      else
         wordCountMap.insert(make_pair(word, 1));
   }
   istringstream iss2(str);
   while (getline(iss2, word, ' ')) {
      int count = wordCountMap[word];
      if (count > 1) {
         return word;
      }
   }
   return "NoRepetition";
}
int main(){
   string str = "C program are easy to program";
   string repeatedWord = findFirstRepeatWord(str);
   if (repeatedWord != "NoRepetition")
      cout<<"The first repeated word is '"<<repeatedWord<<"'";
   else
      cout<<"No word is Repeated in the string";
   return 0;
}

आउटपुट

The first repeated word is 'program'

कार्य को आसान बनाने के लिए यह प्रोग्राम बहुत सारे इन-बिल्ड फ़ंक्शंस का उपयोग करता है।


  1. सी ++ में एक स्ट्रिंग से पहली अधिकतम लंबाई भी शब्द खोजें

    इस समस्या में, हम अल्पविराम से अलग किए गए शब्दों से मिलकर एक स्ट्रिंग स्ट्रिंग हैं। हमारा काम है एक स्ट्रिंग से पहली अधिकतम लंबाई, यहां तक ​​कि शब्द, ढूंढना । हमें सबसे बड़ा शब्द दो रिक्त स्थान के बीच की स्ट्रिंग खोजने की जरूरत है जिसकी लंबाई अधिकतम और सम हो। समस्या को समझने के लिए एक उदाहरण लेते

  1. C++ में प्रथम N प्राकृत संख्याओं का औसत ज्ञात कीजिए

    इस समस्या में, हमें एक संख्या n दी गई है। हमारा कार्य प्रथम N प्राकृत संख्याओं का औसत ज्ञात करना . है । संख्याओं का औसत संख्याओं की कुल संख्या से विभाजित सभी संख्याओं के योग के रूप में परिभाषित किया गया है। N प्राकृतिक संख्याओं के औसत को N से विभाजित पहली N प्राकृतिक संख्याओं के योग के रूप में परि

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

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