Рекурсия в JavaScript - Рекурсивные функции

Поделиться
HTML-код
  • Опубликовано: 28 окт 2024

Комментарии • 8

  • @shame364
    @shame364 3 года назад +2

    Спасибо, чувак. Все доходчиво)

  • @axelpoint
    @axelpoint 3 года назад

    Спасибо за видео, только у тебя понял принцип работы рекурсии, когда у функции есть два аргумента. До этого не мог осознать на что умножается число в этом коде.
    def power(a, n):
    if n == 0:
    return 1
    else:
    return a * power(a, n - 1)

  • @ivankrupskyi8984
    @ivankrupskyi8984 3 года назад

    Можешь объяснить, как res переменная умножается? там же нету += base * pow(base, exp-1), а просто =
    Вот этого момента я не могу понять, даже пройдясь дебаггером шаг за шагом...

    • @DevMagazineChannel
      @DevMagazineChannel  3 года назад

      это происходит в момент вытягивания очередного элемента из стека
      return res будет возвращать значение для следующего base * pow(...)
      (можно представить это как очередной снимок состояния которое хранится в стеке)

  • @YuriiKratser
    @YuriiKratser 3 года назад

    Спасибо, может быть первый вошёл и первый вышел?

    • @DevMagazineChannel
      @DevMagazineChannel  3 года назад

      В рекурсии используется стек, а стек это "первым вошёл - последним вышел" (как в видео).
      "первый вошёл и первый вышел" - это описание очереди

    • @YuriiKratser
      @YuriiKratser 3 года назад

      @@DevMagazineChannel спасибо! Да, согласен)