![]() |
Рекурсия
А ну-ка срач на тему:
Рекурсия хороша только как алгоритмическая абстракция. Минусы р: - исчерпание стека (в цикле мы можем использовать свою реализацию итераторов, поддерживающую Большие значения) - различное поведение в разных местах вызова (стек может быть уже забит) - частенько реализация рекурсии в коде выглядит брейнфачно Пока все примеры использования рекурсии я мог разложить в цикл. Но, я вполне мог что-то упустить - давайте обсудим! :) |
Ответ: Рекурсия
Например построение дерева папок на диске... давайте без рекурсии сделайте.
|
Ответ: Рекурсия
Как и с заливкой полиогна - достаточно списка структур, фиксирующих объекты (состояния обхода).
Рекурсия - простота или примитив? Кто стоит за Джокером? Узнайте на булке! |
Ответ: Рекурсия
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
|
Ответ: Рекурсия
2ffinder: подача мысли нравится - спасибо за коммент.
"оптимизация", "есть такие", "кури то-то" - постараться если (на самом деле - особо и не надо), то можно оправдать использование goto и вообще любой паттерн. Понятно: раз живёт - то иногда-то используется, однако от вычисления факториала через рекурсию - волосы дыбом (код кристально ясен, но автор далёк и от проганья, и от численных методов и подобного матана) |
Ответ: Рекурсия
Цитата:
любые алгоритмы для работы с деревьями решаются красиво через рекрсию. от решения поиска в бинарном дереве через списки структур фиксирующие объекты волосы встают не меньше чем от решения факториала рекурсией. |
Ответ: Рекурсия
Грубо говоря каждый инструмент хорош для своих целей. И нет панацеи.
|
Ответ: Рекурсия
Цитата:
http://itc.ua/articles/yazyk_erlang_...cessorov_26721 Цитата:
|
Ответ: Рекурсия
Цитата:
добрый stackoverflow подсказывает как это делать. так что это вам не это. главное чтобы рекурсия была хвостовой (когда рекурсивный вызов - последний sequence point в функции), а не обычной. |
Ответ: Рекурсия
Цитата:
*** Как и с гото, аргументировать (судя по кол-ву СПС ко 2-ому посту) использование рекурсии вместо цикла средний (! перечитай слово слева 20 раз) программист может только тем, что не хватает воображалки реализовать алгоритм не в лоб. |
Часовой пояс GMT +4, время: 02:38. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot