Sobes.tech
Junior

რა არის რეკურსიული ქცევა?

sobes.tech AI

პასუხი AI-სგან

कोड या कार्यान्वयन स्वतःला कॉल गर्ने प्रकार हो।

मुख्य तत्त्वहरू:

  • आधार स्थिति: जुन अवस्थामा पुनरावृत्ति रोकिन्छ। यसबिना, पुनरावृत्ति अनंत हुनेछ।
  • पुनरावृत्त स्थिति: कार्यको त्यो भाग जहाँ यो आफैलाई बोलाउँछ, सामान्यतया परिवर्तन गरिएको तर्कसहित।

उदाहरण (फ्याक्टोरियल गणना):

func factorial(_ n: Int) -> Int {
    // आधार स्थिति
    if n <= 1 {
        return 1
    }
    // पुनरावृत्त स्थिति
    return n * factorial(n - 1)
}
// बोलाउने उदाहरण
let result = factorial(5) // 120

फाइदाहरू:

  • एउटै संरचनाको समस्या लागि उत्तम समाधान (उदाहरणको लागि, रूखहरू traversing)।
  • केही अवस्थामा पढ्न सजिलो कोड।

असुविधाहरू:

  • धेरै स्मृति प्रयोग गर्न सक्छ (call stack)।
  • धेरै गहिरो पुनरावृत्तिमा stack overflow हुन सक्छ।
  • कहिलेकाहीं iterative समाधान भन्दा कम प्रभावकारी।