|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
06.10.2014, 14:52 | #1 |
Пользователь
Регистрация: 25.12.2013
Сообщений: 91
|
Рекурсия (вопрос к программистам с опытом)
Подскажите, попадались ли вам задачи, которые решить без рекурсии сложно? Такие , что вы подумали - "Нет - тут лучше не цикл, а рекурсию реализовать".
Когда её вообще выгодно применять? Или же лучше использовать обычные итерации циклов? Это же и быстрее и памяти меньше займет. |
06.10.2014, 15:52 | #2 | |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
Цитата:
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
|
06.10.2014, 16:09 | #3 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
06.10.2014, 16:15 | #4 |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
Дадада, ты прав, ты прав. Узбагойзя.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
06.10.2014, 16:44 | #5 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
раздватри.
I'm learning to live...
|
06.10.2014, 17:06 | #6 | |
C++ hater
СтарожилДжуниор
Регистрация: 19.07.2009
Сообщений: 3,333
|
Цитата:
за примером далеко ходить не надо: задача о ханойской башне с помощью рекурсии решается в 3 строки, когда линейный алгоритм будет на порядок объемнее (да и более сложен для понимания, не говоря уже о реализации).
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay
My other car is cdr. Q: Whats the object-oriented way to become wealthy? A: Inheritance |
|
06.10.2014, 20:33 | #7 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
Стек обычно меньше кучи, так что если рекурсия глубокая может будет проще через очередь, хотя это в принципе та же рекурсия, хотя наверно лучше/легче распараллеливается.
|
06.10.2014, 23:53 | #9 | ||
Старожил
Регистрация: 22.05.2007
Сообщений: 9,085
|
Цитата:
Цитата:
Когда красота кода дороже всего остального или когда рекурсия хвостовая. Да. Лучше использовать обычные циклы. |
||
07.10.2014, 22:32 | #10 | |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
Цитата:
А вот в ситуации, когда просится рекурсия, попытка заменить её на цикл приведет к тому, что решение будет работать и медленнее, и памяти сожрет больше. Последний раз редактировалось _Bers; 08.10.2014 в 09:15. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Оценка создания сайта(вопрос ПРОграммистам) | sokk | Фриланс | 9 | 15.10.2013 20:30 |
вопрос всем программистам ___________ | JonnyTommy | Помощь студентам | 0 | 23.03.2012 23:21 |
Поделитесь опытом ... | gefest58 | Свободное общение | 17 | 08.01.2011 15:58 |