본문 바로가기
카테고리 없음

[코드트리] 재귀함수 알고리즘 기초 학습 후기

by 프로P 2026. 6. 1.

코딩테스트를 준비하다 보면 막연하게 “문제를 많이 풀어야 한다”는 생각이 들 때가 많다.
나도 그동안은 부족한 유형이 있으면 관련 문제를 더 많이 풀어보는 식으로 공부하려고 했다. 그런데 문제를 풀다 보면 정작 내가 어떤 부분에서 막히는지, 어떤 기본기가 부족한지 정확히 파악하기 어려울 때가 있었다.

이번 코드트리 청약챌린지 4회차 미션은 차근차근 약점 집중 돌파였다.
내가 느낀 코드트리의 장점은 코딩테스트에 필요한 유형들을 큰 덩어리로만 제시하는 것이 아니라, Trail, Chapter, Lesson 단위로 나눠서 하나씩 학습할 수 있게 구성되어 있다는 점이다. 덕분에 “나는 알고리즘이 약해”처럼 막연하게 느끼는 게 아니라, 지금 어떤 유형을 공부하고 있고 어떤 기본기를 다지고 있는지 확인하면서 학습할 수 있었다.

 

이번 주에는 Trail 2 코딩테스트 연습 과정에서 재귀함수 레슨을 학습했다.
재귀함수는 개념 자체는 익숙하다고 생각했지만, 실제 문제를 풀 때는 호출 순서나 종료 조건, 출력 위치에 따라 결과가 달라지기 때문에 은근히 헷갈리는 부분이 있었다. 특히 DFS나 백트래킹처럼 재귀를 기반으로 하는 문제를 풀 때, 재귀 흐름이 머릿속에서 매끄럽게 그려지지 않으면 구현이 복잡하게 느껴지기도 했다.

이번에 학습한 레슨은 값을 반환하지 않는 재귀함수였고, 기본 문제부터 연습 문제, 테스트 문제 순서로 풀었다.
처음에는 반복 출력하기, 숫자 차례로 출력하기처럼 쉬워 보이는 문제들이 나왔다. 그런데 직접 풀다 보니 쉬운 문제라고 해서 대충 넘어갈 수 있는 건 아니었다. 재귀 호출을 먼저 작성하는지, 출력문을 먼저 작성하는지에 따라 결과 순서가 달라졌고, 종료 조건을 어디에 두는지도 중요했다.

 

이 과정에서 내가 좋았던 점은 코드트리가 단순히 문제만 던져주는 방식이 아니라, 레슨 안에서 기본 문제 → 연습 문제 → 테스트 문제로 이어지는 흐름을 제공한다는 점이었다.
기본 문제에서는 개념을 확인하고, 연습 문제에서는 조금 더 응용해보고, 테스트 문제에서는 내가 정말 이해했는지 점검하는 느낌이었다. 학창시절에 수학 문제집을 풀 때 어려운 문제를 풀기 전에 필요한 기본 유형을 차근차근 익히는 것과 비슷했다.

 

다른 코딩테스트 학습 서비스들은 다양한 문제를 많이 접할 수 있다는 장점이 있지만, 가끔은 내가 어느 지점에서 부족한지 모른 채 문제 풀이만 반복하게 되는 경우가 있었다. 반면 코드트리는 커리큘럼이 유형별로 잘게 나뉘어 있어서, 약점을 한 번에 해결하려고 하기보다 작은 단위로 쪼개서 보완할 수 있다는 점이 좋았다.

이번 재귀함수 레슨을 풀면서 “내가 당연히 안다”고 생각했던 부분에서도 실수가 나올 수 있다는 걸 느꼈다.
쉬운 문제를 풀면서도 재귀 호출의 흐름, 종료 조건, 출력 순서 같은 기본기를 다시 확인할 수 있었고, 이런 작은 연습들이 나중에 더 복잡한 DFS나 백트래킹 문제를 풀 때 도움이 될 것 같다는 생각이 들었다.

결국 코딩테스트 공부에서 중요한 건 어려운 문제를 무작정 많이 푸는 것만은 아닌 것 같다.
내가 어떤 유형에서 약한지 알고, 그 약점을 작은 단위로 나눠서 하나씩 보완하는 과정이 필요하다. 이번 주에는 그 과정으로 재귀함수 레슨을 학습했고, 기본기를 다시 다지는 데 도움이 됐다.

앞으로도 코드트리의 Trail과 Lesson 구조를 활용해서 재귀함수뿐만 아니라 정렬, 시뮬레이션, 완전탐색 같은 유형들도 차근차근 학습해볼 예정이다.

 

코드트리 학습하러 가기: https://www.codetree.ai/