Другие языки программирования и технологии

Итерация присуща человеку, а рекурсия - богу. Почему?

потому что у бога стек вызовов бесконечный по объему.
Даниил Хм....
Даниил Хм....
53 958
Лучший ответ
Сергей Борончук хмм получается рекурсия лишь на бумаге бесконечна, судя по тому что вы пишите про стек, который заведомо определен по сути? Если рекурсия бесконечна, проект не скомпилируется??? -я что то не пробовал даже....

Я думал рекурсия только память хавает сильно.... никогда бы не подумал что она заранее создает стек.... получается псевдорекурсия
Потому что рекурсия прекрасна и человек лишь краем глаза заглядывает за ширму. Мы ничего не создали, можем только копировать. Все достижения человеческой цивилизации ничто в сравнении с процессами проходящими в природе, она совершенствуется и без сознания, а мы обладая сознанием, совершенствуемся крайне редко. Понимай это все - уже бы произошел новый виток в эволюции. Но как и в природе - всему нужно время, у вселенной были миллиарды лет, а мы лишь пшик на линии времени.
ДР
Друг Родины
61 177
Мотороллер подобен лесу, а картошка — зиме. Почему? Спроси у того, кто это тебе сказал, он лучше понимает, что хотел сказать. Или не понимает, всякое бывает.
Nurislam. Raiymbekov
Nurislam. Raiymbekov
83 567
Сергей Борончук Цитата из книги Страуса)))
есть люди мыслящие рекурсивно...
Рамиз Джафаров
Рамиз Джафаров
11 032
Друг Родины Но разница примерно как в квантовых процессорах и их эмуляции через текущие. По сути - мысля рекурсией человек всё-равно выполняет последовательные операции. Есть задача на шахматной доске, которую решая через рекурсию - можно вызвать переполнение стека, и приходится выправлять операции (делать вызов следующей ветки когда предыдущая завершена)
Любую рекурсию можно заменить на цикл, в цикле все статично - прыжок всегда в одну точку, требуется только переменные-параметры, которые можно хранить в стеке, в случае рекурсии стек забивается параметрами функции, адресом возврата, старым фрейм-регистром стека + локальные переменные внутри функции и так на каждый вызов... Думаю очевидно, что рекурсия не инструмент богов, а ламеров...
Z1
Zif 1
8 452
Сергей Борончук )))) Не могу понять что подразумевается под стеком? можете дать ссылку о том что подразумевается под словом стек в этом случае. и как он вообще может быть забит если он состоит вроде как из узлов выделенной памяти...
Po3Oboe Пони Мне кажется, заменять все случаи рекурсии циклами очень сложно. Это должно быть встроено в компилятор (если это вообще имеет смысл).

> в цикле все статично - прыжок всегда в одну точку
В цикле не может быть ветвлений? Тогда цикл будет бесконечный.
Сергей Борончук и почему для ламеров? Приоритет может отводиться скорости, а не памяти. Тогда можно пройдясь вниз и вверх по рекурсии выполнить несколько задач разом. это делает ее быстрее циклов в некоторых случаях. + ко всему укорачивает код, хотя и делает его менее читабельным...
я тоже щас че ни будь умное толкну)

стек это то есть рекурсия это - ЭТО - ЭТО вот. правда я гений ну все пока гением не стану сюда не зайду!!!
Вадя Oo
Вадя Oo
3 061
Nurislam. Raiymbekov Вроде бы ты хотел что-то сказать, но не смог. Года через 3-4 ты в школе пройдёшь расстановку запятых, тогда возвращайся.
Потому что в рекурсии намного проще запутаться