इस खंड में, हम यह जानने जा रहे हैं कि पायथन प्रोग्रामिंग भाषा का उपयोग करके किसी दिए गए अनुक्रम के क्रमपरिवर्तन और संयोजन को कैसे खोजा जाए।
अन्य प्रोग्रामिंग भाषा की तुलना में अजगर का एक प्रमुख लाभ यह है कि यह इसके साथ पुस्तकालयों के विशाल सेट के साथ आता है।
हम दिए गए अनुक्रम के क्रमपरिवर्तन और संयोजनों को खोजने के लिए पायथन इनबिल्ट पैकेज का उपयोग करने जा रहे हैं।
क्रमचय और संयोजन खोजने के लिए एल्गोरिदम
-
चरण 1 :आवश्यक पैकेज आयात करें। पहला कदम आवश्यक पैकेज आयात करना है, क्योंकि हम itertools पैकेज का उपयोग करने जा रहे हैं, इसलिए हम इसका उपयोग करके इसे आयात करते हैं।
>>> import itertools >>>
-
चरण 2 :अनुक्रम के सभी क्रमपरिवर्तन और संयोजन प्राप्त करें। दूसरा चरण एक इनपुट के रूप में अनुक्रमों/वस्तुओं की एक सूची दर्ज करना है जो टुपल्स की सूची के रूप में सभी क्रमपरिवर्तन और संयोजन लौटाएगा।
-
हम क्रमपरिवर्तन और संयोजन की लंबाई भी निर्धारित कर सकते हैं।
-
चरण 3 :परिणाम प्रिंट करनाअंतिम चरण अनुक्रमों के सेट के सभी क्रमपरिवर्तन और संयोजन को प्रिंट करना है। हम परिणाम को प्रिंट करने के लिए लूप फ़ंक्शन का उपयोग कर सकते हैं।
क्रमपरिवर्तन
आइए तीन वस्तुओं की सूची का क्रमपरिवर्तन खोजें।
उदाहरण 1
from itertools import permutations seq = permutations(['a','b','c']) for p in list(seq): print(p)
परिणाम
('a', 'b', 'c') ('a', 'c', 'b') ('b', 'a', 'c') ('b', 'c', 'a') ('c', 'a', 'b') ('c', 'b', 'a')
उदाहरण 2:
क्रमपरिवर्तन की लंबाई को परिभाषित करके क्रमपरिवर्तन का पता लगाएं।
from itertools import permutations seq = permutations(['p', 'y', 't', 'h', 'o', 'n'], 2) for p in list(seq): print(p)
परिणाम
('p', 'y') ('p', 't') ('p', 'h') ('p', 'o') ('p', 'n') ('y', 'p') ('y', 't') ('y', 'h') ('y', 'o') ('y', 'n') ('t', 'p') ('t', 'y') ('t', 'h') ('t', 'o') ('t', 'n') ('h', 'p') ('h', 'y') ('h', 't') ('h', 'o') ('h', 'n') ('o', 'p') ('o', 'y') ('o', 't') ('o', 'h') ('o', 'n') ('n', 'p') ('n', 'y') ('n', 't') ('n', 'h') ('n', 'o')
संयोजन
आइए पायथन का उपयोग करके अनुक्रम के संयोजन का पता लगाएं।
उदाहरण 1:संयोजन की लंबाई निर्धारित करें
#Import itertools package from itertools import combinations #Getting all combination of a particular length. combi = combinations(['p', 'y', 't', 'h', 'o', 'n'], 5) #Print the list of combinations for c in list(combi): print(c)
परिणाम
('p', 'y', 't', 'h', 'o') ('p', 'y', 't', 'h', 'n') ('p', 'y', 't', 'o', 'n') ('p', 'y', 'h', 'o', 'n') ('p', 't', 'h', 'o', 'n') ('y', 't', 'h', 'o', 'n')
उदाहरण 2:प्रतिस्थापन के साथ संयोजन
#Import itertools package from itertools import combinations_with_replacement #Getting all combination by defining a particular length. combi = combinations_with_replacement(['p', 'y', 't', 'h', 'o', 'n'], 2) #Print the list of combinations for c in list(combi): print(c)
परिणाम
('p', 'p') ('p', 'y') ('p', 't') ('p', 'h') ('p', 'o') ('p', 'n') ('y', 'y') ('y', 't') ('y', 'h') ('y', 'o') ('y', 'n') ('t', 't') ('t', 'h') ('t', 'o') ('t', 'n') ('h', 'h') ('h', 'o') ('h', 'n') ('o', 'o') ('o', 'n') ('n', 'n')