C 언어
재귀는 자기 유사 방식으로 항목을 반복하는 프로세스입니다. 프로그래밍 언어에서 프로그램이 동일한 함수 내에서 함수를 호출하도록 허용하는 경우 이를 함수의 재귀 호출이라고 합니다.
void recursion() { recursion(); /* function calls itself */ } int main() { recursion(); }
C 프로그래밍 언어는 재귀, 즉 자신을 호출하는 함수를 지원합니다. 그러나 재귀를 사용하는 동안 프로그래머는 함수에서 종료 조건을 정의하는 데 주의해야 합니다. 그렇지 않으면 무한 루프에 빠지게 됩니다.
재귀 함수는 숫자의 계승 계산, 피보나치 수열 생성 등과 같은 많은 수학적 문제를 해결하는 데 매우 유용합니다.
다음 예는 재귀 함수를 사용하여 주어진 숫자의 계승을 계산합니다 -
라이브 데모#include <stdio.h> unsigned long long int factorial(unsigned int i) { if(i <= 1) { return 1; } return i * factorial(i - 1); } int main() { int i = 12; printf("Factorial of %d is %d\n", i, factorial(i)); return 0; }
위의 코드를 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다. -
Factorial of 12 is 479001600
다음 예는 재귀 함수를 사용하여 주어진 숫자에 대한 피보나치 수열을 생성합니다 -
라이브 데모#include <stdio.h> int fibonacci(int i) { if(i == 0) { return 0; } if(i == 1) { return 1; } return fibonacci(i-1) + fibonacci(i-2); } int main() { int i; for (i = 0; i < 10; i++) { printf("%d\t\n", fibonacci(i)); } return 0; }
위의 코드를 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다. -
0 1 1 2 3 5 8 13 21 34
C 언어
파이썬 재귀 이 튜토리얼에서는 재귀 함수(자신을 호출하는 함수)를 만드는 방법을 배웁니다. 재귀란 무엇입니까? 재귀는 자체적으로 무언가를 정의하는 프로세스입니다. 물리적 세계의 예는 서로 마주하는 두 개의 평행 거울을 배치하는 것입니다. 그 사이에 있는 모든 객체는 재귀적으로 반영됩니다. 파이썬 재귀 함수 파이썬에서는 함수가 다른 함수를 호출할 수 있다는 것을 알고 있습니다. 함수 자체를 호출하는 것도 가능합니다. 이러한 유형의 구성을 재귀 함수라고 합니다. 다음 이미지는 recurse라는 재귀 함수의 작동을 보여줍니다.
자바 재귀 이 튜토리얼에서는 자바 재귀 함수, 장점과 단점에 대해 배울 것입니다. 자바에서 자신을 호출하는 메소드를 재귀 메소드라고 합니다. 그리고 이 과정을 재귀라고 합니다. 물리적 세계의 예는 서로 마주하는 두 개의 평행 거울을 배치하는 것입니다. 그 사이에 있는 모든 객체는 재귀적으로 반영됩니다. 재귀는 어떻게 작동합니까? 위의 예에서는 recurse() main 내부의 메소드 방법. (일반 메서드 호출). 그리고 recurse() 메서드 내에서 동일한 recurse 메서드를 다시 호출합니다. 재귀 호출입니다. 재