Python
  • Полезные ссылки
  • Базовый Python
    • Простые
      • Циклы. Варианты циклов, назначение.
      • Что такое список, примеры, назначение.
      • Что такое словарь, примеры, назначение.
      • Что такое срез, примеры, назначение.
      • Что такое функция. Для чего нужны функции. Параметры функций.
      • Что такое класс. Для чего нужны классы.
      • В чем разница между функцией и классом (рассматривая одну функцию).
      • Как объединить несколько строк.
      • Рекурсия.
      • Что такое json. Для чего используют json.
    • Сложные
      • Генераторы, примеры, назначение.
      • Итераторы. Зачем нужны
      • Что такое кортеж, примеры, назначение
      • Что такое set, примеры, назначение
      • Наследование, примеры, назначение
      • Полиморфизм, примеры, назначение
      • Преимущества итераторов перед генераторами
      • Способы создания итераторов
      • Изменяемые и неизменяемые типы
      • Что такое исключения, примеры, назначение
  • Алгоритмы и структуры данных
    • Общее понятие массива. Представление массива. Примеры.
    • Понятие очереди, принципы работы, примеры использование, временные сложности операций.
    • Понятие стека, принципы работы, примеры использование, временные сложности операций
    • Как осуществляется операция доступа к элементу массива. Временная сложность операции
    • Понятие временной сложности алгоритмов. Назначение, примеры, графическое представление
    • Линейный поиск в массиве. Временная сложность
    • Поиск минимального элемента в массиве. Временная сложность
    • Линейный поиск в двумерном массиве. Временная сложность
    • Алгоритм бинарного поиска. Временная сложность
    • Поиск подстроки. Линейный алгоритм. Временная сложность
  • Практика
    • Простые
    • Сложнее
Powered by GitBook
On this page

Was this helpful?

  1. Базовый Python
  2. Простые

Рекурсия.

PreviousКак объединить несколько строк.NextЧто такое json. Для чего используют json.

Last updated 6 years ago

Was this helpful?

В программировании рекурсия — вызов функции (процедуры) из неё же самой, непосредственно (простая рекурсия) или через другие функции (сложная или косвенная рекурсия), например, функция A вызывает функцию B, а функция B — функцию A. Количество вложенных вызовов функции или процедуры называется глубиной рекурсии.

Проще сказать нельзя. Про рекурсии есть известная поговорка: Чтобы понять рекурсию, нужно сперва понять рекурсию Итак, питон позволяет работать с рекурсиями легко и непринужденно. Самый первый пример рекурсии, с которой сталкиваются большинство программистов - это нахождение факториала. Код может быть таким:

def factorial(n):
    if n <= 1:
        return 1
    else:
        return n * factorial(n - 1)

Видосик