본문 바로가기

main/Algorithm

알고리즘 공부에서 길을 잃었나요 .....? 코드트리 한달 사용 솔직 후기

 

들어가기 전에 잠깐, 제가 알고리즘을 공부한 지가 얼마나 되었게요?

처음 시작한 알고리즘. Python이었으며 무려 2019년, Jul 이니까 햇수로만 따지면 5년이 좀 안 됐군요.

놀랍게도 아직도 알고리즘 초보입니다. 주변 개발자들과 이야기를 나눠 보면, 알고리즘 많이 풀면 는다고 하던데.

그런 말 들을 때마다 아무 말도 할 수 없었던 ... 

 

저는 . . 왜 계속 풀어도 실력이 안 늘었던 걸까요 ? !!!!!

많이의 기준이 달랐던 것일까요?

 


과거의 알고리즘 이야기 ...

알고리즘 기초 공부할 때 "정올", "SWEA" 사이트에서도 많이 풀었고

또 많이들 사용하시는 "백준"에서도 많이 풀었습니다.

오랜만에 찾아본 백준 기록

막상 이렇게 보니 생각보다 적네요.

랭크는 높아 봐야 골드 1..! (딱 하나😅)

플레의 벽을 넘지 못했습니다 ... 제가 그래도 롤에서는 찍어 봤는데

 

취업 준비하면서는 "프로그래머스"를 접했죠.

JS 공부하기 시작하면서 이제 Python 대신 JS로도 조금씩 풀기 시작했습니다.

당시 JS로 코테 지원하는 기업 찾기는 사실 힘든 편이어서 JS를 하고 싶었지만 Python을 놓지 못했어요.

 

그 와중에 알고리즘 못하는 저.. 어느 기업이든 코테 통과하기 진짜 쉽지 않았습니다 .. 거의 떨어졌죠

재능의 영역 아닐까? 라고 이제 거의 포기에 이른 상태.

 

하지만 뭐 그래도 문제 푸는 거 나름 재밌고 .. (웃기게도 못하지만 좋아했습니다)

영어 공부와 알고리즘 두 마리 토끼를 잡자며

여러 외국 플랫폼도 찍먹 해봤지만 역시나 오래 가지 못했습니다 ㅎㅎ

 

얼마 뒤 취업하게 되고, 그 후로 알고리즘이랑 완전히 담 쌓은지 2년..3년? 정도가 지난 것 같아요.

하지만 이제 퇴사하게 되었습니다.


지금의 알고리즘, 여전히 주구장창 문제만 풀고 있었어요

JS개발자 나름 경력(?) 인 데도? 알고리즘을 봐야 할까!

라는 생각이 막 들다가도

혹시 모르잖아.. 기본적인 거 "설마 모르겠어?"라고 물어봤는데 모르면 어떻게 되겠어..

라는 생각으로 알고리즘에 대한 두려움이 다시 올라옵니다.

 

그래서 사실 LeetCode를 아주 가끔 풀고 있었어요. 정말 쉬운 문제들로만..

아, 또 최근에 구름톤챌린지 알고리즘 챌린지에, 행사까지 참여하면서 구름 플랫폼도 써봤네요.

 

현 상태는 딱 이렇습니다.

내 알고리즘 실력이 성장하고 있을까? 에 대한 확신이 전혀 없습니다.

구름톤챌린지로 잊었던 자료구조들에 대한 기억을 다시 떠올리고 감을 되찾은 거 같긴 하지만, 그뿐인 것 같아요.

 

왜냐하면, 저는 여전히 알고리즘 문제를 잘 못 풀고

새로운 유형을 만나면 또다시 시간이 오래 걸리고

그렇기 때문에 문제 하나하나 푸는 데만 해도 시간을 꽤 많이 쓰다 보니

이렇게 많은 시간을 알고리즘 공부하는 데 써도 되나?라는 불안감이 다시금 올라옵니다!

 

코드트리와 학습하며 문제풀기

지난 달, 애정하는 커뮤니티 글또에서 올라온

코드트리 무료 이용 혜택 소식!

얼른 신청해 버리고 시작일은 2월 5일인데! 무려 1월 31일부터 문제를 풀었답니다 (감사하게도 빨리 열어 주셨어요)

 

물론 작심삼일뿐이라 듬성듬성 잔디 농사가 되긴 했습니다.

ㅋㅋ^^;

 

학습 내용의 큰 카테고리는 다음과 같이 6가지로 되어 있어요.

 

기초는 좀 쉬워 보이길래 연습(Novice Mid)으로 시뮬레이션 문제들의 감을 찾으려고 했습니다.

그런데 생각보다 시간이 많이 걸려요.

왜냐면 문제가 엄청 많은데, 그중에서도 핵심 문제만 풀 수 있는 '빠른 완료 테스트' 또한 엄청 많았어요 ,,

 

그렇게 시간이 흐르다 보니 바로 위에서 말씀드렸던,

처음 알고리즘 공부가 막혔을 때와 같은 불안감이 다시 찾아오더랍니다.

무작정 문제만 풀고 있으니 말이죠..

 

못 푸는 문제는 빨리 답을 보고 공부하는 것도 방법인데, '빠른 완료 테스트'의 경우 해설을 볼 수가 없습니다 ㅋㅋㅋ

하지만 알고보니 코드트리는 답은 보여주지 않아도

막히는 문제에 차근차근 접근할 수 있는 쉬운 문제 셋을 같이 가지고 있더라고요.

 

이게, 무작정 해설을 보는 것보다 문제 푸는 방법을 배워가며 정복하는 느낌이라 굉장히 뿌듯했습니다!

시간을 많이 할애해서 알고리즘을 공부할 수 있다면 이런 체계적인 학습법이 정말 도움 될 것 같아요.

 

그리고 느꼈죠.

나는 이 좋은 학습 플랫폼을 백준처럼 쓰고 있구나아 ..!!

코드트리에서는 이러라고 제공해주신게 아닐텐데 ....!!!

 

한달이 지난 지금에서야 깨닫게 되어서 조금은 아쉽지만!

저에게는 아직 4주가 더 남아있으니까요.

3월 한 달 동안은 몇 문제를 풀었나에 집중하지 않고 어떻게 잘 공부했나에 집중해보려고 합니다.

 

어머 .. 완전 나잖아

 

학습 소요 시간이 애초에 2-6개월인데 나머지 한 달 동안 어디까지 가능할지 모르겠지만

 

이제는 알고리즘 졸업할 나를 기대하며

다음 후기 2탄에는 향상된 실력을 자랑하는 후기를 쓰고 싶네요.

 

후기 1탄 끝!


번외: 좋은 점 - 정답 알려주기

알고리즘 문제 풀 때 보통은 숨겨진 테스트케이스를 제공해주지 않잖아요.

숨겨진 테스트케이스를 직접 찾아보는 것은 필요한 일이고 좋은 경험이지만

 

문제의 구현이 복잡한 경우, 그 숨겨졌다고 예상되는 테스트케이스에서의 정답!을 도출해내야 하는데

그 시간 또한 꽤 많이 들었던 기억들이 있어요.

문제는, 그 정답이 실제로 정답이 아닐 경우죠 ㅋㅋㅋㅋㅋㅋㅋ🤯

 

코드트리 플랫폼에서는 테스트케이스의 정답을 알려주고 나의 출력과 비교해줘요.

저는 이게 참 좋았습니다, 어디에서도 볼 수 없었던 서비스가 아닐까 ..?

일단 제가 써본 플랫폼 중에선 처음인 것 같아요.

 

제가 임의로 테스트 케이스를 만들 경우에도

동일하게 정답을 알려 줍니다.

너무 좋아요!