Re: Recursion vs Iteration
- From
- Oleg I. Khovayko ()
- To
- Vitaly Lugovsky ()
- Date
- 2003-01-22T21:58:04Z
- Area
- RU.ALGORITHMS
From: "Oleg I. Khovayko" <olegh@ncbi.nlm.nih.gov>
Vitaly Lugovsky wrote:
>
> IMHO, заметно читабельнее, чем предыдущий паскалеобразный вариант...
С этим согласен. К сожалемию, я не знаю ML в должной мере, чтобы
оценить красоту Вашего решения. А учить только для этого треда этой эхи
не хочется.
Далее. судя по нулевому отклику других читателей эхи на данную тему,
данная переписка им просто неинересна. Поэтому предлагаю закрыть тред здесь,
но если есть желание - перейти на прямую переписку.
Вернувшись к обсуждаемой теме:
1. Я признаю Вашу правоту в том смысле, что рекурентное
доказательство адекватности/корректности алгоритма более
эффективно, чем итеративное.
2. При практическом кодировании этих алгоритмов возможны
случаи, когда итеративное решение по корректности
эквивалентно рекурсивному (например, перемножение матриц).
В этом случае либо программист, либо компилятор для более
эффективного использования машинных ресурсов может заменить
рекурсию итерацией.
Однако, как мне кажется, нет смысла отовсюду изгонять
итерацию (как это в свое время было с goto), и вместо нее
насильно сажать рекурсию "чтоб была", как Вы это
сделали в своей функции "dowhile".
Получилось ведь то же самое - только в профиль...
Да, я понимаю, что здесь это было сделано исключительно
ради доказательства.
Резюме: ВЫ МЕНЯ УБЕДИЛИ. Спасибо.
--
#include <best/regards.hpp>
Oleg I. KHOVAYKO
(301)435-5885 || WEB: http://olegh.spedia.net
--- ifmail v.2.15dev5
* Origin: National Center for Biotechnology Information (2:5020/400)