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

C# में टॉप-डाउन दृष्टिकोण का उपयोग करके फाइबोनैचि कैसे लागू करें?


फाइबोनैचि अनुक्रम संख्याओं का एक समूह है जो एक या शून्य से शुरू होता है, उसके बाद एक आता है, और इस नियम के आधार पर आगे बढ़ता है कि प्रत्येक संख्या (जिसे फाइबोनैचि संख्या कहा जाता है) पिछली दो संख्याओं के योग के बराबर होती है। टॉप-डाउन दृष्टिकोण एक बड़ी समस्या को छोटे और समझने योग्य टुकड़ों में तोड़ने पर केंद्रित करता है। स्पेस जटिलता O(N) है क्योंकि हम एक अतिरिक्त ऐरे मेमोरी बना रहे हैं जो संख्या के आकार के बराबर है।

समय जटिलता − O(N)

स्पेस जटिलता − O(N)

उदाहरण

public class DynamicProgramming{    public int fibonacciTopdownApproach(int n,int[] dpArr ){       if(n==0 || n == 1){          return n;       }       if(dpArr[n] != 0){          return dpArr[n];       }       int res = fibonacciTopdownApproach(n - 1,dpArr) + fibonacciTopdownApproach(n - 2,dpArr);       return dpArr[n] = res ;    } } static void Main(string[] args){    DynamicProgramming dp = new DynamicProgramming();    int[] dpArr = new int[150];    Console.WriteLine(dp.fibonacciTopdownApproach(12, dpArr)); }

आउटपुट

144
  1. Java 9 में JavaFX का उपयोग करके JShell को प्रोग्रामेटिक रूप से लागू करें Java 9 में JavaFX का उपयोग करके JShell को प्रोग्रामेटिक रूप से लागू करें

    Java 9 ने jdk.jshell API पेश किया जो डेवलपर्स को अपने एप्लिकेशन में JShell कार्यक्षमता को एम्बेड करने की अनुमति देता है। यह लेख दिखाता है कि एक JavaFX एप्लिकेशन कैसे बनाया जाए जो JShell का उपयोग करके कोड स्निपेट्स का मूल्यांकन करता है और परिणाम प्रदर्शित करता है। आवश्यक निर्भरताएं Java 9+ (JSh

  1. - Java में Gson का उपयोग करके कस्टम FieldNamingStrategy कैसे लागू करें

    FieldNamingStrategy Gson में कस्टम फील्ड नामकरण प्रदान करने का एक तंत्र है। यह क्लाइंट कोड को फील्ड नामों को एक विशेष कन्वेंशन में अनुवाद करने की अनुमति देता है जो सामान्य Java फील्ड घोषणा नियमों द्वारा समर्थित नहीं है। translateName() मेथड प्रत्येक फील्ड नाम को स्ट्रिंग pre_ से प्रीफिक्स करेगा।नीचे

  1. - जावा में Stack का उपयोग करके Queue कैसे लागू करें?

    Queue क्लास Collection इंटरफेस को एक्सटेंड करती है और फर्स्ट-इन-फर्स्ट-आउट (FIFO) का उपयोग करके इन्सर्ट और रिमूव ऑपरेशन्स का समर्थन करती है। Stack Vector क्लास का एक सबक्लास है और यह ऑब्जेक्ट्स के लास्ट-इन-फर्स्ट-आउट (LIFO) स्टैक को दर्शाता है। स्टैक के शीर्ष पर जोड़ा गया अंतिम एलिमेंट (In) स्टैक स