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

दिए गए स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करने के लिए C प्रोग्राम


इस समस्या में, हमें एक स्ट्रिंग दी गई है। हमारा कार्य दिए गए स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करने के लिए एक C प्रोग्राम बनाना है।

यह प्रोग्राम दी गई स्ट्रिंग के सभी संभावित संयोजन ढूंढेगा और उन्हें प्रिंट करेगा।

क्रमपरिवर्तन एक वस्तु के सभी भागों की व्यवस्था है, व्यवस्था के सभी संभावित क्रमों में।

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

इनपुट

xyz

आउटपुट

xyz, xzy, yxz, yzx, zxy, zyx

व्याख्या

ये क्रम में लिए गए सभी क्रमपरिवर्तन हैं।

इस समस्या को हल करने के लिए, हम बैकट्रैकिंग का उपयोग करेंगे यानी स्ट्रिंग के प्रत्येक वर्ण को क्रमपरिवर्तन के पहले वर्ण के रूप में लेना और फिर शेष वर्णों को एक-एक करके क्रमिक रूप से चुनना। और इस प्रकार, स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करना।

दिए गए स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करने का प्रोग्राम

// दिए गए स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करने का प्रोग्राम -

उदाहरण

#include <iostream> using namespace std; void findPermutations(string str, int l, int r){     if (l == r)         cout << str << " ";     else{         for (int i = l; i <= r; i++){             swap(str[l], str[i]);             findPermutations(str, l + 1, r);             swap(str[l], str[i]);         }     } } int main(){     string str = "WXYZ";     int n = str.size();     findPermutations(str, 0, n - 1);     return 0; }

आउटपुट

WXYZ WXZY WYXZ WYZX WZYX WZXY XWYZ XWZY XYWZ XYZW XZYW XZWY YXWZ YXZW YWXZ YWZX YZWX YZXW ZXYW ZXWY ZYXW ZYWX ZWYX ZWXY
  1. - रीकर्सन का उपयोग करके लेक्सिकोग्राफिक क्रम में स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करने का पायथन प्रोग्राम

    जब रीकर्सन का उपयोग करके लेक्सिकोग्राफिक क्रम में स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करने हों, तो एक विधि परिभाषित की जाती है जो एलिमेंट्स के क्रम पर पुनरावृति करने के लिए for लूप का उपयोग करती है और एलिमेंट्स को जोड़ने के लिए join मेथड का उपयोग करती है। उदाहरण from math import factorial def lexi

  1. - रीकर्सन के बिना लेक्सिकोग्राफिक क्रम में स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करने का पायथन प्रोग्राम

    जब रीकर्सन का उपयोग किए बिना लेक्सिकोग्राफिक क्रम में स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करने हों, तो एक विधि परिभाषित की जाती है जो स्ट्रिंग को पैरामीटर के रूप में लेती है। यह स्ट्रिंग एलिमेंट्स पर पुनरावृति करने के लिए एक साधारण for लूप का उपयोग करती है और कुछ प्रतिबंधों की जांच के लिए while कंड

  1. पायथन प्रोग्राम: दी गई स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करें पायथन प्रोग्राम: दी गई स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करें

    इस लेख में हम दी गई समस्या के समाधान के बारे में जानेंगे। समस्या कथन हमें एक स्ट्रिंग दी गई है, हमें स्ट्रिंग के सभी संभावित क्रमपरिवर्तन प्रदर्शित करने हैं। उदाहरण # रूपांतरण def toString(List): return .join(List) # क्रमपरिवर्तन def permute(a, l, r): if l == r: print(toString(a))