Защо рекурсията е толкова трудна?

Съдържание:

Защо рекурсията е толкова трудна?
Защо рекурсията е толкова трудна?
Anonim

Какво прави рекурсията объркваща? Основната причина е, че разглеждаме една и съща функция с различни стойности на локални променливи . Много е важно да се уверите кой вход се използва в момента, когато анализирате рекурсивна функция рекурсивна функция μ-рекурсивните функции (или общи рекурсивни функции) са частични функции, които приемат крайни кортежи от естествени числа и връщат едно естествено число. Те са най-малкият клас частични функции, който включва началните функции и е затворен под композиция, примитивна рекурсия и μ оператор. https://en.wikipedia.org › wiki › General_recursive_function

Обща рекурсивна функция - Wikipedia

Трудно ли се научава рекурсията?

Но има друга много мощна контролна структура: рекурсия. Рекурсията е една от най-важните идеи в компютърните науки, но обикновено се разглежда като една от по-трудните за разбиране части на програмирането. Книгите често го въвеждат много по-късно от итеративните контролни структури.

Защо рекурсията не е добра?

Лошият. В императивните езици за програмиране рекурсивните функции трябва да се избягват в повечето случаи (моля, без омразни съобщения за това как това не е вярно в 100% от случаите). Рекурсивните функции са по-малко ефективни от техните итеративни аналози. Освен това те са обект на опасностите от препълване на стека.

Какъв е проблемът с рекурсията?

Рекурсията еалгоритмична техника, при която функция, за да изпълни задача, извиква себе си с някаква част от задачата. Рекурсивна функция извиква себе си по-опростена версия на проблема в опит да опрости проблема до точка, в която може да бъде решен.

Защо рекурсията е толкова мощна?

С рекурсията получавате и допълнителната полза, че другите програмисти могат по-лесно да разберат вашия код – което винаги е добре да имате. Строго погледнато, рекурсията и итерацията са еднакво мощни. Всяко рекурсивно решение може да бъде реализирано като итеративно решение със стек.

Препоръчано: