Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Рекурсия (https://javascript.ru/forum/misc/1970-rekursiya.html)

arseniy-at-home 13.10.2008 10:01

Рекурсия
 
Здравствуйте.

Я использую рекурсивную функцию и в некоторых случаяю получаю Out of memory. Возможно ли как-то увеличить объем выделяемой памяти?

Octane 13.10.2008 10:18

Не надо ничего увеличивать, у Вас просто бесконечная рекурсия получается или слишком большой объем вычислений.

arseniy-at-home 13.10.2008 10:23

Цитата:

Сообщение от Octane (Сообщение 7010)
Не надо ничего увеличивать, у Вас просто бесконечная рекурсия получается или слишком большой объем вычислений.

Это понятно. Но задача такова, что никак иначе не поступить. Поэтому нужно что-то придумать.

arseniy-at-home 13.10.2008 10:25

Цитата:

Сообщение от Octane (Сообщение 7010)
Не надо ничего увеличивать, у Вас просто бесконечная рекурсия получается или слишком большой объем вычислений.

В смысле большой объем вычислений у меня. Точно, не бесконечная.

Octane 13.10.2008 11:01

Значит эту задачу нужно решать не на стороне клиента или возможно найти более оптимальный способ решения, который не потребует столько ресурсов и времени.

ZoNT 13.10.2008 11:16

любую рекурсию можно заменить циклом...

Snipe 13.10.2008 12:33

Разбейте и выполняйте маленькими кусочками по сетИнтервал.

magistr_bender 13.10.2008 20:34

Цитата:

Сообщение от ZoNT
любую рекурсию можно заменить циклом...

хм.. интересно а как ты замениш генерацию дерева из базы на цикл, с учётом что древо будет динамически изменяться и вложений будет теоретически до бесконечности..
представ себе у меня такая задача возникала.. интересно бы увидить её реализацию циклами..
p.s. рекурсией это 5 строчек у меня вышло
p.s.s. могу привести ещё много подобных задач с рекурсией

ZoNT 13.10.2008 20:40

подучи теорию и алгоритмизацию...

magistr_bender 13.10.2008 20:48

не отмузуйсо)
я алгоритизацию знаю отлично равно как и теорию.. я не спорю, что это возможно, я говорю что для некоторых вещей это просто нерационально, как например для приведенного мною выше примера.
мой пример был изнаально реализован именно с помощью циклов и кода было там на 3 листа с учётом всех проверок.. мой же код оказался в очень много раз короче и работал соответственно в разы быстрее..


Часовой пояс GMT +3, время: 07:43.