본문 바로가기
CS/알고리즘|자료구조

[CS/알고리즘] Recursion

by ahj 2021. 10. 8.

조건 1 - 적어도 하나의 Base Case, 즉, 순환되지 않고 종료되는 Case가 있어야한다.

조건 2 - 모든 Case는 결국 Base Case로 수렴해야 한다.

 

암시적(implicit) 매개변수를 쓰지 말고 명시적(explicit) 매개변수를 써라

예를 들어 순환 함수를 사용할 수 있는데 함수 내에서 그냥 for문을 돌렸다고 치자

def func(n, data, target):

~~

for i in range(n):

~~ 

이런 식으로 그런데 이때 data가 list인데 시작점이 어디인지 명시가 안되어 있다. 우리끼리 그냥 암시적(implicit)으로 index 0인 값부터 시작한다는 것을 알 뿐

그런데 recursion 함수를 짤 때는 

def func_recur(start, end, data, target):

~~

이런식으로 순환 구간의 시작점을 start로 명시적(explicit)으로 지정하라는 말!

댓글