Рекурсія проти ітерації

Автор: Laura McKinney
Дата Створення: 4 Квітень 2021
Дата Оновлення: 15 Травень 2024
Anonim
Сравнение итеративной и рекурсивной функций
Відеоролик: Сравнение итеративной и рекурсивной функций

Зміст

Різниця між рекурсією та ітерацією полягає в тому, що рекурсія - це вислів у коді, який викликає саму функцію, тоді як ітерація дозволяє коду повторюватися.


Рекурсія та ітерація - два важливі поняття в комп'ютерному програмуванні. І рекурсія, і ітерація повторюють набір інструкцій. Рекурсія - це твердження в коді, яке викликає саму функцію, з іншого боку, ітерація дозволяє коду повторюватися. Поки умова не є хибною, процес ітерації продовжує повторюватися. Рекурсія - це процес, який застосовується до набору кодів; ітерація - це сукупність інструкцій.

Рекурсія дозволена в C ++ там, де необхідно викликати функцію знову і знову. Рекурсія також визначається як кругове визначення. Набір локальних змінних та параметрів створюється для написання рекурсивної програми. Рекурсії не покращують використання пам'яті, оскільки вона працює багато разів. Якщо ви хочете припинити рекурсію, вам слід використовувати оператор або набір коду, щоб зупинити рекурсію.

Ітерація продовжується, поки набір інструкцій не стане помилковим. Ітерація - це набір операторів, що включає ініціалізацію, порівняння та виконання операторів всередині оператора ітерації та оновлення керуючої змінної. Немає використання стека в ітерації для зберігання змінних, тоді як є стек в рекурсії. Саме тому рекурсія у виконанні відбувається повільніше, ніж ітерація.


Зміст: Різниця між рекурсією та ітерацією

  • Порівняльна діаграма
  • Рекурсія
  • Ключові відмінності
  • Висновок
  • Пояснювальне відео

Порівняльна діаграма

ОсноваРекурсіяІтерація
ЗначенняРекурсія - це вислів у коді, який викликає саму функцію

Ітерація дозволяє коду повторюватися.

 

Застосовується Для функцій застосовується рекурсія.Ітерація застосовується до петель
СтекСтек використовується в рекурсіїСтек не використовується в ітерації.
ПроцесРекурсія повільнаІтерація швидка

Рекурсія

Рекурсія дозволена на C ++ там, де є необхідність викликати функцію знову і знову. Рекурсія також визначається як кругове визначення. Набір локальних змінних та параметрів створюється для написання рекурсивної програми. Рекурсія не покращує використання пам'яті, оскільки вона працює багато разів. Якщо ви хочете припинити рекурсію, вам слід використовувати оператор або набір коду, щоб зупинити рекурсію.


Ітерація

Ітерація продовжується, поки набір інструкцій не стане помилковим. Ітерація - це набір операторів, що включає ініціалізацію, порівняння та виконання операторів всередині оператора ітерації та оновлення керуючої змінної. Немає використання стека в ітерації для зберігання змінних, тоді як є стек в рекурсії. Саме тому рекурсія у виконанні відбувається повільніше, ніж ітерація.

Ключові відмінності

  1. Рекурсія - це вислів у коді, який викликає саму функцію, тоді як ітерація дозволяє коду повторюватися.
  2. Для функцій застосовується рекурсія, тоді як ітерація застосовується до циклів.
  3. Стек використовується в рекурсії, тоді як стек не використовується в ітерації.
  4. Рекурсія повільна, тоді як ітерація швидка порівняно з рекурсією.

Висновок

У цій статті вище ми бачимо чітку різницю між рекурсією та ітерацією.

Пояснювальне відео