[50%] 재귀함수 vs 반복문

J.Noma·2021년 10월 12일
0

어떤 기능을 반복적으로 실행시키고자 할 때, 반복문과 재귀함수라는 두 가지 선택지가 있다

각각이 어떤 장.단점을 가지는지에 대해 생각해보았다


재귀함수

장점

  • 구현이 간결하다
    forwhile을 선언하고 break 구현을 위해 flag를 둔다던가하는 추가적인 처리없이 함수를 단지 재사용함으로써 구현할 수 있으므로 상대적으로 간결한 코드로 구현할 수 있다고 생각했다

단점

  • 메모리 부담이 있다
    메모리 해제가 늦기에(처음 실행된 함수가 마지막 함수 종료 시점에서야 같이 종료되므로) 경우에 따라 컴퓨터에 부담을 줄 수 있다.

  • 가독성이 낮다
    가독성 측면에서 반복성을 가졌는지 쉽게 파악하기 어렵다


반복문

장점

  • 가독성이 좋다
    코드가 반복성을 가졌는지 쉽게 파악할 수 있다 (forwhile같은 키워드가 바로 보이므로)

  • 메모리 부담이 적다
    메모리 해제가 빠르다 (한 루프가 끝나면서 함수가 종료(=메모리 해제)된 후에 다음 루프를 수행하므로)

단점

  • 구현이 상대적으로 복잡하다
    우선 for 혹은 while같은 반복문 구문이 필요하고, 그 외 추가적인 변수가 필요한 경우도 많아서 코드 구현이 상대적으로 복잡해진다
profile
노션으로 이사갑니다 https://tungsten-run-778.notion.site/Study-Archive-98e51c3793684d428070695d5722d1fe

0개의 댓글