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

पायथन प्रोग्राम में Nth कातालान नंबर

इस लेख में, हम nवें कातालान संख्या की गणना के बारे में जानेंगे।

कैटलन नंबर प्राकृतिक संख्याओं का एक क्रम है जो पुनरावर्ती सूत्र द्वारा परिभाषित किया जाता है -

$$c_{0} =1\;और\; c_{n+1} =\displaystyle\sum\limits_{i=0}^nc_{i} c_{n-i}\; n\geq 0;$$

. के लिए

n =0, 1, 2, 3, … के लिए पहले कुछ कैटलन नंबर 1, 1, 2, 5, 14, 42, 132, 429,................ हैं। ...

कैटलन नंबर रिकर्सन और डायनेमिक प्रोग्रामिंग दोनों द्वारा प्राप्त किए जा सकते हैं।

तो आइए उनके क्रियान्वयन को देखें।

दृष्टिकोण 1:पुनरावर्तन विधि

उदाहरण

दृष्टिकोण 1:पुनरावर्तन विधि

# A recursive solution
def catalan(n):
   #negative value
   if n <=1 :
      return 1
   # Catalan(n) = catalan(i)*catalan(n-i-1)
   res = 0
   for i in range(n):
      res += catalan(i) * catalan(n-i-1)
   return res
# main
for i in range(6):
   print (catalan(i))

आउटपुट

1
1
2
5
14
42

सभी चर और पुनरावर्ती कॉल का दायरा नीचे दिखाया गया है।

पायथन प्रोग्राम में Nth कातालान नंबर

दृष्टिकोण 2:गतिशील प्रोग्रामिंग विधि

उदाहरण

# using dynamic programming
def catalan(n):
   if (n == 0 or n == 1):
      return 1
   # divide table
   catalan = [0 for i in range(n + 1)]
   # Initialization
   catalan[0] = 1
   catalan[1] = 1
   # recursion
   for i in range(2, n + 1):
      catalan[i] = 0
      for j in range(i):
         catalan[i] = catalan[i] + catalan[j] * catalan[i-j-1]
   return catalan[n]
# main
for i in range (6):
   print (catalan(i),end=" ")

आउटपुट

1
1
2
5
14
42

सभी चर और पुनरावर्ती कॉल का दायरा नीचे दिखाया गया है।

पायथन प्रोग्राम में Nth कातालान नंबर

निष्कर्ष

इस लेख में, हमने nth कातालान संख्या उत्पन्न करने की विधि के बारे में सीखा


  1. आर्मस्ट्रांग नंबर की जांच के लिए पायथन प्रोग्राम

    इस लेख में, हम दिए गए समस्या कथन को हल करने के लिए समाधान और दृष्टिकोण के बारे में जानेंगे। समस्या कथन एक पूर्णांक n दिया गया है, हमें यह जांचना होगा कि दिया गया पूर्णांक एक आर्मस्ट्रांग संख्या है। एक धनात्मक पूर्णांक को आर्मस्ट्रांग क्रमांक n कहा जाता है यदि abcd... = a^n + b^n + c^n + d^n + &hel

  1. पायथन कार्यक्रम में एन-वें फाइबोनैचि संख्या

    इस लेख में, हम nवें फाइबोनैचि संख्या की गणना करेंगे। एक फाइबोनैचि संख्या नीचे दिए गए पुनरावर्तन संबंध द्वारा परिभाषित किया गया है: Fn =Fn-1 + Fn-2 F0 . के साथ =0 और एफ1 =1. पहले कुछ फाइबोनैचि संख्याएँ 0,1,1,2,3,5,8,13,.................. हैं। हम रिकर्सन और डायनेमिक प्रोग्रामिंग की विधि का उपयोग

  1. एनएच कैटलन नंबर के लिए पायथन प्रोग्राम

    इस लेख में, हम nवें कातालान संख्या की गणना के बारे में जानेंगे। कैटलन नंबर प्राकृतिक संख्याओं का एक क्रम है जो पुनरावर्ती सूत्र द्वारा परिभाषित किया जाता है - $$C_{0}=1\:और\:C_{n+1}=\displaystyle\sum\limits_{i=0}^n C_{i}C_{n-i} \:n\geq0;$$ के लिए n =0, 1, 2, 3, … के लिए पहले कुछ कैटलन नंबर 1, 1,