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

सी ++ में स्ट्रिंग को संपीड़ित करें


मान लीजिए कि हमारे पास एक स्ट्रिंग s है, हमें दिए गए स्ट्रिंग से लगातार डुप्लिकेट वर्णों को समाप्त करना होगा और इसे वापस करना होगा। इसलिए, यदि किसी सूची में लगातार दोहराए गए वर्ण हैं, तो उन्हें वर्ण की एक प्रति के साथ प्रतिस्थापित किया जाना चाहिए। तत्वों का क्रम पहले जैसा ही रहेगा।

इसलिए, यदि इनपुट "heeeeelllllllllloooooo" जैसा है, तो आउटपुट "हेलो" होगा

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • रिट:=एक खाली स्ट्रिंग

  • इनिशियलाइज़ i:=0 के लिए, जब i <साइज़ ऑफ़ s, अपडेट (i से 1 तक बढ़ाएँ), करें -

    • यदि रिट का आकार गैर-शून्य है और रिट का अंतिम तत्व s[i] के समान है, तो -

      • निम्नलिखित भाग पर ध्यान न दें, अगले पुनरावृत्ति पर जाएं

    • ret :=ret concatenate s[i]

  • वापसी रिट

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

उदाहरण

#include <bits/stdc++.h>
using namespace std;
class Solution {
   public:
   string solve(string s) {
      string ret = "";
      for(int i = 0; i < s.size(); i++){
         if(ret.size() && ret.back() == s[i]){
            continue;
         }
         ret += s[i];
      }
      return ret;
   }
};
int main(){
   Solution ob;
   cout << (ob.solve("heeeeelllllllloooooo"));
}

इनपुट

"heeeeelllllllloooooo"

आउटपुट

helo

  1. सी++ में जंप गेम वी

    मान लीजिए कि हमारे पास पूर्णांकों की एक सरणी है जिसे arr और एक पूर्णांक d कहा जाता है। एक चरण में हम इंडेक्स i से − . पर जा सकते हैं i + x जहां:i + x

  1. सी ++ में एक स्ट्रिंग को टोकन करना

    इस खंड में, हम देखेंगे कि C++ में स्ट्रिंग्स को कैसे टोकननाइज़ किया जाता है। सी में हम वर्ण सरणी के लिए strtok() फ़ंक्शन का उपयोग कर सकते हैं। यहां हमारे पास एक स्ट्रिंग क्लास है। अब हम देखेंगे कि उस स्ट्रिंग से कुछ सीमांकक का उपयोग करके स्ट्रिंग को कैसे काटा जाता है। C++ फीचर का उपयोग करने के लिए,

  1. सी ++ में एक स्ट्रिंग को टोकननाइज़ करें?

    पहला तरीका है, रिक्त स्थान से अलग किए गए शब्दों को पढ़ने के लिए एक स्ट्रिंगस्ट्रीम का उपयोग करना। यह थोड़ा सीमित है लेकिन यदि आप उचित जांच प्रदान करते हैं तो यह कार्य काफी अच्छी तरह से करता है। उदाहरण #include <vector> #include <string> #include <sstream> using namespace std; in