У нас на занятиях по алгоритмам все время твердят, что рекурсию надо использовать с осторожностью, мол, она память жрет и может привести к переполнению стека. Но ведь есть же куча задач, где она выглядит элегантнее и понятнее, чем итеративные решения, например, обход деревьев.
Я к тому, что, на мой взгляд, рекурсия — это просто инструмент, как и любой другой. Если понимать, как она работает, и использовать ее для подходящих задач, то почему бы и нет? Тот же алгоритм быстрой сортировки или поиск в глубину — без рекурсии их представить сложно
А вы как считаете? Действительно ли рекурсия — это зло, которое нужно избегать любой ценой, или просто нелюбимый ребенок академических кругов?
