without haste but without rest

[python] 알고리즘 - 재귀 용법(Recursive Call) 본문

Computer Science/Algorithm

[python] 알고리즘 - 재귀 용법(Recursive Call)

JinungKim 2020. 2. 13. 21:04

재귀 용법(Recursive Call)

출처: https://ko.wikipedia.org/wiki/%EC%9E%AC%EA%B7%80_(%EC%BB%B4%ED%93%A8%ED%84%B0_%EA%B3%BC%ED%95%99)

 

이미지를 보면 프로그램 속에서 프로그램을 실행했다. 다시 프로그램 속의 프로그램 속에서 프로그램을 실행했다. 이게 재귀다. 함수 안에서 다시 똑같은 함수를 불러와서 재사용한다.

 

 

*주의할 점은 항상 종료 조건을 만들어줘야 한다. 무한 루프에 빠진다.

# Recursive
def recursive(data):
    if data == 0:
        return
    
    print(data)
    recursive(data -1)
    print('Number is ', data)
    
#Test Code
recursive(5)

 

위 코드를 실행하면 아래처럼 출력된다. Number is .. 가 왜 역순으로 출력이 되는지 생각해보면 재귀를 이해하는 데에 도움이 된다.

 

Comments