주요 차이점 : 프로그래밍에서 재귀는 재귀 함수를 고려하여 설명 할 수 있습니다. 재귀 함수는 코드를 반복하기 위해 다시 자신을 호출하는 함수입니다. 반면 반복은 코드의 일부 섹션을 반복하도록 반복하는 반복 함수에 의해 수행됩니다.
프로그래밍에서 반복과 반복은 둘 다 반복을 달성하는 데 사용됩니다. 그들은 여러 번 반복되는 프로세스를 의미합니다. 재귀는 조건이 충족 될 때까지 무언가가 자신을 참조하는 접근 방식을 기반으로합니다. 메쏘드는 자신을 직접적으로 또는 간접적으로 호출 할 수 있다면 재귀 적이라고 말할 수있다.
{
... 이름 () ...
}
또는
void name ()
{
... 게임 () ...
}
void game () {
... 이름 () ...
}
성공적인 재귀를 위해서는 재귀 프로세스에서 호출 할 때마다 계산을 단순화해야한다는 점을 명심해야합니다. 재귀는 기본 사례를 정의하여 수행됩니다.
int 계승 (int N)
{
if (N == 0)은 1을 반환하고;
else return (N * factorial (N-1));
}
이 예제에서 재귀는 계승 함수를 다시 호출하는 명령문 (N * factorial (N-1))에서 쉽게 볼 수 있습니다. 재귀는 코드 단축에 도움이되므로 매우 유용합니다. 그러나 재귀는 성능이 약간 느립니다.
함수 계승 (n)
{
var 루프, 결과;
결과 = 1;
for (loop = 1; loop <= n; loop ++)
{
결과 = 결과 * 루프;
}
반환 결과;
}
이 예에서 루프는 1에서 n까지의 정수를 사용하여 수행되며 루프 <= n 문이 추가 루핑을 중지하는 기준으로 사용됩니다. 따라서 재귀 및 반복을 사용하여 동일한 결과를 얻을 수 있다고 결론을 내릴 수 있습니다. 그러나 둘 다 약간 다른 접근법을 기반으로합니다. 모든 재귀 알고리즘은 반복 (반복)을 사용하여 작성할 수도 있습니다.
재귀와 반복의 비교 :
재귀 | 되풀이 | |
정의 | 재귀는 코드를 반복하기 위해 다시 자신을 호출하는 재귀 함수를 나타냅니다. | 반복은 코드의 일부 섹션을 반복하도록 반복하는 반복 함수에 의해 수행됩니다. |
중요한 점 | 기본 케이스를 결정해야합니다. | 종료 조건을 결정해야합니다. |
공연 | 비교적 느린 | 비교적 빠름 |
메모리 사용 | 비교적 많은 | 비교적 적은 |
암호 | 더 작은 | 더 길게 |
무한 반복 | 무한 재귀는 시스템 충돌을 일으킬 수 있습니다. | 무한 반복은 CPU주기를 반복적으로 사용합니다. |
구조 | 선택 | 되풀이 |
지역 변수 | 필요 없음 | 필수 |