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

सभी संभावित स्ट्रिंग्स को प्रिंट करें जिन्हें C++ में रिक्त स्थान रखकर बनाया जा सकता है


इस समस्या में, हमें एक स्ट्रिंग दी जाती है और हमें उन सभी स्ट्रिंग को प्रिंट करना होता है जो स्ट्रिंग के वर्णों के बीच में जगह रखकर इस स्ट्रिंग का उपयोग करके बनाई जा सकती हैं।

आइए विषय को बेहतर ढंग से समझने के लिए एक उदाहरण लेते हैं -

Input: string = ‘XYZ’
Output: XYZ, XY Z, X YZ, X Y Z

इस समस्या को हल करने के लिए, हमें उन सभी संभावित तरीकों को खोजना होगा जिनसे हम स्ट्रिंग में जगह बना सकते हैं। इसके लिए हम रिकर्सन का उपयोग करेंगे। इसमें, हम एक-एक करके रिक्त स्थान रखेंगे और एक नई स्ट्रिंग उत्पन्न करेंगे।

उदाहरण

#include <iostream>
#include <cstring>
using namespace std;
void printPattern(char str[], char buff[], int i, int j, int n){
   if (i==n){
      buff[j] = '\0';
      cout << buff << endl;
      return;
   }
   buff[j] = str[i];
   printPattern(str, buff, i+1, j+1, n);
   buff[j] = ' ';
   buff[j+1] = str[i];
   printPattern(str, buff, i+1, j+2, n);
}
int main() {
   char *str = "XYZ";
   int n = strlen(str);
   char buf[2*n];
   buf[0] = str[0];
   cout<<"The string generated using space are :\n";
   printPattern(str, buf, 1, 1, n);
   return 0;
}

आउटपुट

स्पेस का उपयोग करके उत्पन्न स्ट्रिंग हैं -

XYZ
XY Z
X YZ
X Y Z

  1. C++ में वर्णों की पुनरावृत्ति के साथ सभी क्रमपरिवर्तन प्रिंट करें

    इस समस्या में, हमें n वर्णों की एक स्ट्रिंग दी जाती है और हमें स्ट्रिंग के वर्णों के सभी क्रमपरिवर्तन मुद्रित करने होते हैं। स्ट्रिंग के वर्णों को दोहराने की अनुमति है। क्रमपरिवर्तन का मुद्रण वर्णानुक्रम में किया जाना चाहिए (शब्दकोशीय रूप से क्रमबद्ध क्रम)। आइए विषय को बेहतर ढंग से समझने के लिए एक

  1. C++ में कैरेक्टर ऑफ़ ऐरे का उपयोग करके सभी मान्य शब्दों को प्रिंट करें

    इस समस्या के कारण, हमें शब्दों का एक सेट और वर्णों की एक सरणी दी गई है और हमें यह जांचना है कि क्या सरणी के वर्णों का उपयोग करके शब्द संभव हैं। आइए समस्या को बेहतर ढंग से समझने के लिए एक उदाहरण लेते हैं - Input : words[] : {‘go’ , ‘hi’ , ‘run’ , ‘on’

  1. सी ++ में एक शब्दकोश में विशिष्ट पैटर्न से मेल खाने वाले सभी तार खोजें

    विचार करें कि हमारे पास डिक्शनरी नामक स्ट्रिंग्स की एक सूची है। हमारे पास एक और पैटर्न स्ट्रिंग है। हमारा काम उन स्ट्रिंग्स को ढूंढना है जो पैटर्न से मेल खाती हैं। मान लीजिए कि शब्दकोश [abb, xyz, aab, kmm] जैसा है, और पैटर्न stt है, तो परिणाम abb, और kmm होंगे। चूंकि पैटर्न में पहले एक अक्षर होता है