재귀(Recursive) 함수

팩토리얼(!)의 가장 기본적인 형태는 아래처럼 for 구문으로 구현이 가능합니다.

for (long i = startNum ; i >= 1 ; i--) {
calcNum *= i ;
}

이걸 재귀방식으로 바꾼 코드. 재귀 함수의 가장 간단하고, 대표적인 예제

public void displayFactorials() {
System.out.printf("5! = %d\n", factorial(5)) ;
}
public long factorial(long number) {
if (number <= 0) {
return 1 ;
}

return number * factorial(number - 1) ;
}

또 다른 예제로는 피보나치 수열도 있습니다.

public void displayFibonacci() {
for (int incNum = 0 ; incNum <= 10 ; incNum++) {
System.out.printf("피보나치 수열과 결과값 %d = %d\n", incNum, fibonacci(incNum)) ;
}
}

public long fibonacci(long seqNum) {
if ((seqNum == 0) || (seqNum == 1)) {
return seqNum ;
}
else {
return fibonacci(seqNum - 1) + fibonacci(seqNum - 2) ;
}
}

by 케찹만땅 | 2020/07/02 14:04 | JavaAndroid | 트랙백(1)

트랙백 주소 : http://wpkc.egloos.com/tb/5370263
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Tracked from 케찹만땅 at 2020/07/02 15:06

제목 : 파이썬 터틀그래픽 코흐 곡선 그리기
Koch 곡선은 카오스 이론 중에서 해안가 지형을 설명할때 나오곤 합니다. 이 코드에서는 재귀(recursive) 함수가 등장합니다. 결과는 이렇게 나옵니다. ...more

※ 로그인 사용자만 덧글을 남길 수 있습니다.

◀ 이전 페이지          다음 페이지 ▶