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

C++ में एक पंक्ति में लगातार वर्णों को एक साथ प्रिंट करें


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

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

Input : abcxstk
Output :
abc
x
st
k

स्पष्टीकरण − चूंकि abc एक क्रम में हैं वे एक पंक्ति में मुद्रित होते हैं। फिर x आता है जो क्रम में नहीं है, इसलिए हम यहां एक लाइनब्रेक जोड़ते हैं। अगला s है जो x के साथ अनुक्रम नहीं है इसलिए हम एक लाइनब्रेक जोड़ते हैं। अगला t है जो क्रम में s के साथ क्रम में मुद्रित है। अगला k है जो t के क्रम में नहीं है इसलिए हम एक लाइनब्रेक जोड़ते हैं।

यहां, हम स्ट्रिंग में अपने पिछले तत्व के साथ एक तत्व की जांच करेंगे। यदि वे क्रम में हैं तो सामान्य रूप से प्रिंट करें। अन्यथा, तत्व को लाइन ब्रेक के साथ प्रिंट करें।

उदाहरण

अब, इस तर्क के आधार पर एक प्रोग्राम बनाते हैं

#include <iostream>
using namespace std;
int main(){
   string str = "stukfrpq";
   cout << str[0];
   for (int i=1; str[i]!='\0'; i++){
      if ((str[i] == str[i-1]+1) || (str[i] == str[i-1]-1))
         cout << str[i];
      else
         cout << "\n" << str[i];;
   }
   return 0;
}

आउटपुट

stu
k
f
r
pq

  1. C++ में बाइनरी ट्री सबसे लंबे समय तक लगातार अनुक्रम

    मान लीजिए हमारे पास एक बाइनरी ट्री है; हमें यह जांचना होगा कि क्या हम सबसे लंबे क्रमागत अनुक्रम पथ की लंबाई ज्ञात कर सकते हैं। यदि पथ माता-पिता-बच्चे कनेक्शन के साथ पेड़ में किसी भी नोड से कुछ शुरुआती नोड से नोड्स के किसी अनुक्रम को संदर्भित करता है। माता-पिता से बच्चे तक लगातार सबसे लंबे रास्ते की

  1. C++ में बाइनरी ट्री प्रिंट करें

    मान लीजिए कि हमें इन नियमों के आधार पर m*n 2D स्ट्रिंग सरणी में एक बाइनरी ट्री प्रदर्शित करना है - पंक्ति संख्या m दिए गए बाइनरी ट्री की ऊंचाई के समान होनी चाहिए। कॉलम संख्या n हमेशा एक विषम संख्या होनी चाहिए। रूट नोड का मान पहली पंक्ति के ठीक बीच में रखा जाना चाहिए जिसे इसे रखा जा सकता है। स्तंभ औ

  1. C++ प्रोग्रामिंग में प्रिंट लेवल ऑर्डर ट्रैवर्सल लाइन बाय लाइन।

    बाइनरी ट्री को देखते हुए, फ़ंक्शन को एक ट्री लाइन के लेवल ऑर्डर ट्रैवर्सल को लाइन द्वारा पता लगाना चाहिए। लेवल ऑर्डर ट्रैवर्सल:लेफ्ट रूट राइट, जिसका अर्थ है कि पहले रूट के मान से एक नोड के बाएं बच्चे को प्रिंट करें और फिर दाएं बच्चे के पास जाएं लेकिन यहां हमें लाइन से लाइन करना है जो बाएं से शुरू ह