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

सी # का उपयोग करके टॉपडाउन दृष्टिकोण का उपयोग करके फाइबोनैचि को कैसे कार्यान्वित करें?


फाइबोनैचि अनुक्रम संख्याओं का एक समूह है जो एक या शून्य से शुरू होता है, उसके बाद एक होता है, और इस नियम के आधार पर आगे बढ़ता है कि प्रत्येक संख्या (जिसे फाइबोनैचि संख्या कहा जाता है) बराबर होती है पिछली दो संख्याओं के योग के लिए। टॉप-डाउन दृष्टिकोण एक बड़ी समस्या को छोटे और समझने योग्य भागों में तोड़ने पर केंद्रित है। अंतरिक्ष जटिलता 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. जावा 9 में JavaFX का उपयोग करके JShell को कैसे कार्यान्वित करें?

    जेशेल नमूना अभिव्यक्तियों को लागू करने के लिए उपयोग किया जाने वाला एक इंटरैक्टिव टूल है। हम JavaFX . का उपयोग करके JShell को प्रोग्रामेटिक रूप से कार्यान्वित कर सकते हैं एप्लिकेशन तो हमें नीचे सूचीबद्ध जावा प्रोग्राम में कुछ पैकेज आयात करने की आवश्यकता है jdk.jshell.JShell आयात करें; jdk.jshell.Sn

  1. जावा में जीसन का उपयोग करके कस्टम फील्डनामिंगस्ट्रेटी को कैसे कार्यान्वित करें?

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

  1. हम जावा में स्टैक का उपयोग करके एक कतार को कैसे लागू कर सकते हैं?

    एक कतार वर्ग संग्रह का विस्तार करता है इंटरफ़ेस और यह सम्मिलित करने का समर्थन करता है और फर्स्ट-इन-फर्स्ट-आउट (FIFO) का उपयोग करके संचालन को हटाता है . एक ढेर वेक्टर . का उपवर्ग है वर्ग और यह लास्ट-इन-फर्स्ट-आउट (LIFO) . का प्रतिनिधित्व करता है वस्तुओं का ढेर। स्टैक के शीर्ष पर जोड़ा गया अंतिम त