Διαδρομές
/
Gleam
Gleam
/
Ύλη
/
Αναδρομή
Αν

Αναδρομή σε 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 ακόμη ασκήσεις για να εξασκηθείς στην έννοια Αναδρομή