1 / 1 / 0
Регистрация: 27.10.2020
Сообщений: 124
1

Рекурсивная и итеративная реализация

21.06.2021, 00:34. Показов 636. Ответов 3
Метки нет (Все метки)

Какая реализация алгоритма лучше с точки зрения объема памяти и ускорения программы: рекурсивная или итеративная?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.06.2021, 00:34
Ответы с готовыми решениями:

Рекурсивная и итеративная функция, приближающаяся к arccos x
F(x) = Pi/2-(x+(x^3/2*3)+(1*3*x^5/2*4*5)+(1*3*5*x^7/2*4*6*7)+K) Функция приближается к arccos x и...

Рекурсивная реализация алгоритма двоичного поиска
Рекурсивная реализация алгоритма двоичного поиска

Рекурсивная реализация strcat, stracpy, strcmp и strlen
Introduce strcat (), stracpy (), strcmp () и strlen () recursively.

Создание BST-дерева методом вставки в корень (рекурсивная реализация)
Доброго времени суток, дали задание Создание BST-дерева методом вставки в лист (рекурсивная...

3
583 / 487 / 370
Регистрация: 05.11.2013
Сообщений: 1,262
Записей в блоге: 6
21.06.2021, 04:50 2
Рекурсия позволяет выразиться лаконичней и часто понятней.
Особенно, когда задача естественным образом бьётся на подзадачи.
Зато память стека жрёт, что на большой глубине чревато его переполнением.
И цикл не несёт затрат, связанных с вызовом функции.
С другой стороны, не выполняя лишних вычислений и пользуясь кэшированием, рекурсия может когда-то оказаться эффективней по времени.
В общем, холивар, думаю... Всё от задачи, языка и компилятора зависит
0
С чаем беда...
Эксперт CЭксперт С++
9976 / 5330 / 1459
Регистрация: 18.10.2014
Сообщений: 12,816
21.06.2021, 05:08 3
Цитата Сообщение от orlyuk_vitaliy Посмотреть сообщение
Какая реализация алгоритма лучше с точки зрения объема памяти и ускорения программы: рекурсивная или итеративная?
Никакая. Вопрос бессмыслен. "Рекурсивная или итеративная реализация алгоритма" - это вопрос уровня исходного текста на ЯВУ. А "объем памяти и ускорение" - это вопросы уровня сгенерированного машинного кода. Никакой однозначной связи между первым и вторым нет.
0
Эксперт С++
8719 / 4262 / 950
Регистрация: 15.11.2014
Сообщений: 9,669
21.06.2021, 12:31 4
Цитата Сообщение от orlyuk_vitaliy Посмотреть сообщение
Какая реализация алгоритма лучше с точки зрения объема памяти и ускорения программы: рекурсивная или итеративная?
нужно рассматривать конкретные случаи.
на практике оба варианта примерно одинаковые.

Кликните здесь для просмотра всего текста
возьмем для примера такую задачу:
нужно пройтись по каталогам файловой системы и вывести их содержимое.
большую часть времени ~99% уйдёт на работу с файловой системой, и вывод данных.
а вот расходы на поддержание самих алгоритмов настолько мизерные,
что ими можно пренебречь



но вообще-то, ты не о том думаешь.

рекурсивные функции проще в написании,
но они потенциально опасны переполнением стека.
соотстветственно, их нельзя использовать для алгоритмов,
максимальная глубина стека которых не определена.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.06.2021, 12:31
Помогаю со студенческими работами здесь

Создание BST-дерева методом вставки в лист (рекурсивная реализация)
Доброго времени суток, дали задачу: Создание BST-дерева методом вставки в лист(рекурсивная...

Итеративная функция сравнения деревьев
Задание такое: Рекурсивно и итеративно описать логическую функцию, проверяющую на равенство...

Рекурсивная и итеративная подпрограммы
Разработать алгоритм и составить программу для решения задачи двумя способами: используя...

Итеративная и рекурсивная логическая функция
Пролез инет, поюзал поиск, но не нашел ответ на вопрос Что такое итеративная и рекурсивная...

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

Сортировка списка по типу элементов (рекурсивная реализация)
Создать рекурсивную функцию, которая сортирует список, собрав вместе элементы одних типов (целые...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru