@DartNyan

Насколько популярны рекурсивные функции?

Привет.
Студент, 1-ый курс.
Возник вопрос : Насколько популярны рекурсии в реальной или коммерческой разработке?
Используются ли они вообще?
Например, в косвенном виде для обработки одних и тех же последовательностей действий.
  • Вопрос задан
  • 905 просмотров
Пригласить эксперта
Ответы на вопрос 6
@evgeniy_lm
Рекурсивные функции не поппевцы. им популярными быть не нужно.
А вот программисту нужно изучить что такое рекурсивные функции и использовать их по назночению
Ответ написан
@PokimonFromGamedev
Ведущий разработчик Kotlin
Да, конечно используются.

Я бы сказал что везде и всюду.

Но есть еще и классы задач, который принято решать в рекурсивной форме. Например обход дерева.
Ответ написан
Комментировать
@mofecuju
Студент, 1-ый курс.
Возник вопрос : Насколько популярны рекурсии в реальной или коммерческой разработке?
Используются ли они вообще?
Например, в косвенном виде для обработки одних и тех же последовательностей действий.


Что?
Ваш вопрос звучит так: я не могу научиться правильно произносить Р, а насколько популярна буква Р.
Можно конечно найти статистику как часто это буква встречается. Но зачем?

Рекурсия - это малюсенький и базовый кирпичик программы.
Его можно применять чаще или реже. Его можно не применять месяцами - если нет подходящих под нее задач.
Но когда его нужно применить - это не должно вас затруднить больше, чем найти на клавиатуре букву Р.
Ответ написан
Комментировать
saboteur_kiev
@saboteur_kiev Куратор тега Программирование
software engineer
"Насколько популярны рекурсии в реальной или коммерческой разработке?"

Вопрос слишком студенческий.
Рекурсия это обычное дело. Реальная или коммерческая разработка это обычная разработка. Если задачу проще решить рекурсией - решается рекурсией.

Например популярные алгоритмы сортировки, которые используются повсеместно - используют рекурсию.
Ответ написан
Комментировать
uvelichitel
@uvelichitel
habrahabr.ru/users/uvelichitel
Рекурсивно чрезвычайно удобно писать методы рекурсивных структур данных вроде
type tree:   //псевдокод
      payload: node
      left:    tree
      right:   tree

Обычное дерево, попробуйте написать для него линейные get() и put() циклами. Возможно, но хлопотно и не интуитивно. А рекурсивные структуры данных - повседневная практика.
Самая популярная рекурсивная функция - QuickSort, до недавнего времени встроенная сортировка почти всех ЯП. Хоар написал алгоритм qsort рекурсивным, так его обычно и реализуют. И еще GNU == GNU's Not Unix
Ответ написан
Комментировать
@dude2012
Как пример дерева:
1) Рекурсия используется для обработки файлов в каталоге.
Сначала обрабатываются файлы, потом рекурсивно обрабатываются каталоги.
Ну и не только файлы, а вообще структуры организованные подобным образом.

2) Локализация контролов. На панели контролы, среди которых есть другие контролы и панели. Надо поменять название контрола на значение из словаря.

3) Тэги и объекты в документе. (XML и прочее)

4) Автоматизация работы орг.структуры, например, Active Directory. Есть организация, в ней отделы, в отделе люди (начальство..) и еще другие отделы...

5) Различные каталоги с подкаталогами товаров.. (когда вложенность жестко не задана и уровней достаточно много)

Короче говоря это базовое знание, применяемое весьма часто. Без его знания сложно стать спецом, а когда оно понадобиться сказать сложно, может сейчас, а может и никогда.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы