Fj_
|
Carpal Tunnel
|
|
|
|
Рег.: 12.09.2004
|
Сообщений: 8795
|
|
Рейтинг: 3287
|
|
Re: что быстрее, цикл или рекурсия?
[re: KOHTPA]
30.06.2005 21:25
|
|
|
Чуваки. Вы ебан*лись?
Вы о чем вообще спорите?
Рекурсия и цикл это одно и то же. Быстрее - код на ассемблере. Еще вопросы?
|
The data is the error (c)IIS FTP Server. |
|
KOHTPA
|
Carpal Tunnel
|
|
|
|
Рег.: 22.01.2003
|
Сообщений: 33647
|
|
Рейтинг: 2374
|
|
Re: что быстрее, цикл или рекурсия?
[re: Fj_]
30.06.2005 21:27
|
|
|
N> Жду критики моих рассуждений.
--- ...Я работаю антинаучным аферистом...
|
|
DarkGray
|
Carpal Tunnel
|
|
|
|
Рег.: 30.09.2002
|
Сообщений: 31411
|
|
Рейтинг: 8952
|
|
Re: что быстрее, цикл или рекурсия?
[re: KOHTPA]
30.06.2005 21:30
|
|
|
имхо, ты путаешь логическую рекурсию и физическую.
ps если логическую рекурсию развернуть, то это уже будет цикл, а не рекурсия.
|
|
KOHTPA
|
Carpal Tunnel
|
|
|
|
Рег.: 22.01.2003
|
Сообщений: 33647
|
|
Рейтинг: 2374
|
|
Re: что быстрее, цикл или рекурсия?
[re: DarkGray]
30.06.2005 21:33
|
|
|
Как ты себе представляешь логически более быстрое?
--- ...Я работаю антинаучным аферистом...
|
|
DarkGray
|
Carpal Tunnel
|
|
|
|
Рег.: 30.09.2002
|
Сообщений: 31411
|
|
Рейтинг: 8952
|
|
Re: что быстрее, цикл или рекурсия?
[re: KOHTPA]
30.06.2005 21:35
|
|
|
не понял, спроси другими словами.
|
|
KOHTPA
|
Carpal Tunnel
|
|
|
|
Рег.: 22.01.2003
|
Сообщений: 33647
|
|
Рейтинг: 2374
|
|
Re: что быстрее, цикл или рекурсия?
[re: DarkGray]
30.06.2005 21:40
|
|
|
DG> имхо, ты путаешь логическую рекурсию и физическую
--- "Vyroba umelych lidi, slecno, je tovarni tajemstvi."
|
|
DarkGray
|
Carpal Tunnel
|
|
|
|
Рег.: 30.09.2002
|
Сообщений: 31411
|
|
Рейтинг: 8952
|
|
Re: что быстрее, цикл или рекурсия?
[re: KOHTPA]
30.06.2005 21:57
|
|
|
O(n) разве не логическая оценка?
|
|
Fj_
|
Carpal Tunnel
|
|
|
|
Рег.: 12.09.2004
|
Сообщений: 8795
|
|
Рейтинг: 3287
|
|
Re: что быстрее, цикл или рекурсия?
[re: DarkGray]
30.06.2005 22:19
|
|
|
Ну да. И рекурсия и цикл (или циклы произвольной вложенности) жрут одинаковое количество памяти и времени, если их правильно написать, потому что это одно и то же. В случае рекурсии сложнее избавляться от дублирования данных, в случае цикла приходится ручками писать сохранение данных. В остальном - это ОДНО И ТО ЖЕ.
А быстрее - ассемблер.
|
The data is the error (c)IIS FTP Server. |
|
vond
|
|
|
|
|
Рег.: 08.04.2004
|
Сообщений: 6076
|
Из: Москва
|
Рейтинг: 1202
|
|
Re: что быстрее, цикл или рекурсия?
[re: Fj_]
30.06.2005 22:33
|
|
|
> А быстрее - ассемблер.
Теоретик, блин
|
|
Господин_ПэЖэ
|
|
|
|
|
Рег.: 01.10.2007
|
Сообщений: 3752
|
Из: Москва
|
Рейтинг: 0
|
|
Re: что быстрее, цикл или рекурсия?
[re: Fj_]
30.06.2005 22:35
|
|
|
>А быстрее - ассемблер. Неправда. Если правильно написать компилятор, то самый оптимальный код который существует на ассемблере и выдаваемый компилятором будут одинаковы 
|
1 SIN 2 GOTO HELL |
|
Nik
|
addict
|
|
|
|
Рег.: 31.12.2002
|
Сообщений: 616
|
|
Рейтинг: 0
|
|
Re: что быстрее, цикл или рекурсия?
[re: KOHTPA]
01.07.2005 12:46
|
|
|
Да, забыл маленький ньюанс: когда нужно выходить из рекурсии (при фиксированом кол-ве вызовов)? т.е. нужно вести счетчик + в теле каждой функции проверять не выполни ли мы все вызовы, что не дается бесплатно, а при использование цикла это получаем бесплатно.
|
|
Fj_
|
Carpal Tunnel
|
|
|
|
Рег.: 12.09.2004
|
Сообщений: 8795
|
|
Рейтинг: 3287
|
|
Re: что быстрее, цикл или рекурсия?
[re: Nik]
01.07.2005 14:26
|
|
|
Если я напишу "Убей Себя", это будет считаться флудом? Вот я предлагаю сделать так: я пишу
Убей Себя
а ГПЖ или глебиус делают мне замечание только в том случае, если смогут придумать адекватный ответ.
|
The data is the error (c)IIS FTP Server. |
|
__leha__
|
journeyman
|
|
|
|
Рег.: 09.02.2005
|
Сообщений: 65
|
|
Рейтинг: 0
|
|
Re: что быстрее, цикл или рекурсия?
[re: Fj_]
04.07.2005 17:30
|
|
|
мое мнение такое: конвертить цикл в рекурсию и наоборот смысла не имеет, если алгоритм явно не требует рекурсии то и высасывать ее из пальца не надо, если алгоритм легко описывается с ее использованием то начинать чудить и разворачивать рекурсию в цикл тоже не надо.
в свое время ради спортивного, и не очень, интереса развернул рекурсию в цикл с простой имитацией стека параметров с минимумом действий ( заранее заказанный достаточной величины "стек" и пр. ) был неприятно удивлен тем фактом, что такая простая разверстка привела к потере эффективности на всех выборках. компилятор использовался VC,7 если не потерялся то могу и сам код привести. там строк 50 - 100... мерял время в тиках, рекурсия была очень глубокая.
PS чтобы писать на ассемблере эффективный код надо быть Специалистом в этой области.
|
|