💌

알고리즘 학습 길잡이

알고리즘 학습 난이도가 높아서 진도도 빼기 어렵고 학습도 어려운 분들이 많으신 것 같아요. 여러분들께 다시 한번 알고리즘 학습에 대해 안내를 드리려고 합니다.

[ 학습 목적 ] 알고리즘이 너무 어려운데 왜 해야 하나요?

자료구조, 알고리즘을 이해하고 문법 공부를 병행하시면 보다 좋은 코드를 작성할 수 있습니다.
좋은 코드란?
협업 시에 가독성이 좋은 코드
처리 속도가 빠른 코드
유지·보수하기에 좋은 코드
재사용성이 높은 코드
취업 시에 코딩 테스트 전형이 있는 경우 미리 대비할 수 있습니다.
실제로 이전 기수들은 알고리즘을 후반부에 진행 했었는데, 수료 후 1-2달간 따로 코테 준비를 했어야 했어요.
우리는 빠르게 준비하는 만큼 수료와 동시에 취업할 수 있도록 하기 위해 CS특강(기술면접대비), 알고리즘 학습(코테 대비)를 하는 것입니다!
모든 기업에서 코테를 보지는 않지만, 규모가 있고 높은 연봉과 좋은 복지를 가진 회사들은 코테 전형이 있는 편입니다.

[ 학습 방법 ] 필요성은 알겠어요. 근데 지금 공부하긴 너무 어려워요.

아래의 방법으로 학습해보세요.
1.
비슷한 유형의 문제 많이 풀어보기 : 알고리즘 강의를 이해할 수 있는 만큼만 이해하고, 비슷한 유형의 문제들을 프로그래머스 또는 백준 같은 플랫폼을 이용해서 반복해서 풀어보세요.
2.
내용 정리 해보기 : 알고리즘 강의 이해가 어렵다면 내용 정리만 블로그에 해보세요.
3.
제일 쉬운 문제부터 순차적으로 풀어보기 : 프로그래머스나 백준 같은 플랫폼에서 제일 쉬운 레벨부터 알고리즘 문제를 풀어보세요.
4.
문제 풀이 방식
a.
실시간 강의를 들었을 때처럼 로직을 먼저 글로 써보세요.
b.
작성한 글을 코드로 옮겨보세요.
c.
TIL에 풀었던 알고리즘 문제를 정리하면서 고민했던 로직도 같이 정리를 하고,
d.
몰랐던 문법을 구글링 해본 뒤, 같이 정리 해보세요.
e.
이러한 과정이 익숙해졌을 때, 다시 알고리즘 강의를 보면서 코드에 적용해볼 수 있는 부분들을 하나씩 적용시켜 나가보세요!
알고리즘 학습 시에, 가장 중요한 것은 스스로 생각하는 연습입니다! 정답 구현에 집중하지마시고 반드시 스스로 생각하는 연습을 반복적으로 꾸준히 해주세요 좋은 결과로 돌아올 것입니다!

[ 알고리즘 풀이 과정의 좋은 사례 소개 ]

고민한 내용을 글로 표현할 때, 메모장 등에 적어보셔도 좋지만, 주석으로 작성해도 좋아요. 실제로 배민 코테 1회 만점자 분이 문제를 풀 때 고민한 내용을 모두 주석으로 작성한 뒤, 그 주석을 코드로 하나씩 변환해서 문제를 풀었다고 해요. 문제를 다 풀고서 불필요한 주석은 모두 삭제하고 중요한 부분만 남겨두었다고 하는데요. 물론 코드 작성도 잘했지만 그 과정 자체가 좋게 평가되어 만점을 받게 되었고 사내에서도 레전드로 평가 받았다고 합니다. (대부분 코테 과정은 풀녹화 되기 때문에 풀이 과정도 같이 녹화된 거죠!)

[ 학습 목표 설정 ]

학습이 어렵다면 지금 당장 마스터하는 것에 스트레스 받지 마시고, 내배캠 수료 때까지 프로그래머스 lv.2에 있는 문제들을 다 풀어보는 것을 목표로 해봅시다. (lv.2가 기준인 이유는 대부분의 회사에서 lv.2에 있는 문제를 다 풀면 코테는 통과할 수 있고, 대기업은 lv2와 lv3의 50% 정도를 풀 수 있으면 통과가 가능하다는 것이 학계의 정설 입니다)
알고리즘은 훈련이 필요한 학습입니다. 훈련이 안되었을 때는 당연히 버겁고 어려운 것이 맞습니다! 충분히 알고리즘에 대해 고민하는 시간을 가지는 것이 가장 중요하며, 반복적으로 풀어서 문제 유형에 익숙해지고 배운 내용을 적용, 활용 시켜보는 과정이 반드시 필요합니다.