রি

রিকার্সন মধ্যে Gleam

21টি অনুশীলনী

রিকার্সন সম্পর্কে

কোনো কিছুকে নিজের সাপেক্ষে সংজ্ঞায়িত করার ক্ষমতাকে রিকার্সন বলা হয়। Gleam-এ, রিকার্সন সাধারণত রিকার্সিভ ফাংশনে দেখা যায়, যেগুলো এমন ফাংশন যা নিজেদের কল করে।

একটি রিকার্সিভ ফাংশনে অন্তত একটি বেস কেস এবং অন্তত একটি রিকার্সিভ কেস থাকতে হয়। একটি বেস কেস ফাংশনটিকে আবার কল না করেই একটি মান রিটার্ন করে। একটি রিকার্সিভ কেস ফাংশনটিকে আবার কল করে এবং ইনপুট পরিবর্তন করে যাতে একসময় সেটি বেস কেসের সাথে মিলে যায়।

pub fn factorial(x: Int) -> Int {
  case x {
    // Base case
    1 -> 1

    // Recursive case
    _ -> x * factorial(x - 1)
  }
}

Gleam-এ লুপ করার জন্য কোনো বিশেষ সিনট্যাক্স নেই, তাই সব লুপিং রিকার্সন দিয়ে করা হয়।

pub fn list_length(list: List(String)) -> Int {
  case list {
    [] -> 0
    [_, ..rest] -> 1 + list_length(rest)
  }
}

Gleam রিকার্সিভ কাস্টম টাইপও সমর্থন করে। একটি রিকার্সিভ কাস্টম টাইপের এক বা একাধিক ভ্যারিয়েন্ট তাদের অন্তর্গত ডেটার মধ্যে নিজেকেই নির্দেশ করে।

pub type RussianDoll {
  Child               // Base case
  Mother(RussianDoll) // Recursive case
}
let very_big_doll = Mother(Mother(Mother(Child)))
let small_doll = Mother(Child)
GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি নতুন একটি উইন্ডো বা ট্যাবে খুলবে

রিকার্সন শিখুন

অনুশীলন লক করা আছে

রিকার্সন অনুশীলন করতে আরও 8টি অনুশীলনী আনলক করুন