개발 이야기/알아두면 유용한 것들

알고리즘 왕초보의 [자바스크립트 알고리즘 문제풀이 입문] 강의 수강 후기

thisisamrd 2024. 9. 3.

 

안녕하세요. 오늘은 제가 알고리즘 2단계 시작도 못했던 상태에서 지푸라기라도 잡는 심정으로 들었던 '자바스크립트 알고리즘 문제풀이 입문'이라는 강의를 완강 후 후기를 알려드리고자 합니다.

 

 

포스팅에 앞서 제가 들었던 강의는 아래와 같습니다.

인프런에서 제공하는, 김태원 강사님의 강의입니다. 

 

 

 

https://www.inflearn.com/course/

 

 

 

 

 

수업 방식

해당 강의는 총 95개의 강좌로 되어있습니다. 

해당 강의를 듣기에 앞서 아래와 같이 공부하기를 요하고 있습니다. 

 

 

 

 

 

 

 

즉 영상을 시청하기 전, 미리 문제를 최대한 풀고 듣기를 권장하고 있습니다.

(아래서도 언급하겠지만 저는 이렇게 하지는 않았습니다)

동영상 1개마다 '개념설명-해답' 구조로 되어있습니다. 

 

 

강사님은 각 문제가 어떤 알고리즘 방식으로 되어있는지 알려주고, 문제를 푸는 접근 방법에 대해 소개한 뒤, 코드를 작성하면서 풀이를 진행합니다. 굉장히 담백하시면서 핵심 내용만 바로 짚어서 설명하는 편입니다.

 

 

문제에 대해 이해가 안 가면 질문을 남길 수도 있습니다.

답변도 잘 달립니다.

 

 

 

 

 

 

학습 내용

강의 초반에 해당 강의의 문제와 소스파일을 다운로드하여야 합니다.

그리고 본인의 IDE에서 해당 파일을 열어서 풀어야 합니다.

강사님은 기본적으로 VS code를 사용하길 권장합니다.

문제는 PDF에 적혀 있으며, 본인이 풀어야 하는 문제들은 html 파일에서 구동시켜서 <script> 태그 내에서 문제를 푸는 방식입니다. 

 

 

 

 

 

 

개인적인 꿀팁

저는 VS code에서 pdf를 한번에 볼 수 있는 extension을 사용했습니다.

그리고 아래와 같이 화면을 분할해서 우측 패널에서 문제를 읽어가며 문제 풀이를 진행했습니다.

 

 

 

 

 

마켓플레이스에 vscode-pdf를 검색하면 아래와 같은 확장 프로그램이 나오는데 이를 다운로드하면 됩니다.

 

 

 

 

 

필자가 공부한 방법

첫번째로 강의 들을 때

저는 해당 강의를 듣기 전 알고리즘의 개념도 하나도 몰랐고, 프로그래머스 1단계도 겨우 푸는 수준이었습니다. 

당시에 주위에 알고리즘 학습법에 대해 질문했더니, 문제가 풀릴 때까지 계속 고민하다가 도저히 안되면 해당 강의 풀이 요령을 검색하라고 했었는데요.

저는 그조차 어떻게 하는지 몰랐습니다. 감이 와야 문제를 풀던지 하겠는데 맨 처음에는 어떻게 진행해야 하는지 이해도 안 됐거든요.

 

그래서 사실, 이렇게 고민하는 시간 없이 처음에는 문제만 이해하고 강의를 바로 보았습니다. 

그리고 다 이해를 한 뒤 제가 직접 풀어봤어요.

강의 내용을 그냥 암기하고 푸는 정도라고 볼 수 있겠네요.

그리고 이 강의를 3회 반복 학습을 하기로 했습니다.

 

 

두 번째 복습 때

1회 완강 및 문제를 다 풀고 나서, 저는 처음으로 돌아가 제 스스로 문제를 풀기 시작했습니다.

이때부터 어느 정도 제 스스로 문제를 풀만 해서 최대한 풀어보고, 개념에 대해 잘 생각이 안 나면 강의를 듣곤 했습니다.

하지만 중간부터는 다시금 제 스스로 하기 힘들어서 한 10분 정도만 고민하고 다시 강의를 봤습니다.

그리고 비슷한 문제를 프로그래머스에서 찾아서 함께 진행했습니다.

 

이때부터 첫 번째 강의 들을 때의 좌절감은 사라지고 조금씩 재미가 붙었습니다. 그리고 주변에서 '최대한 풀어보고 문제에 대한 해답을 봐라'라고 왜 말했는지 이제야 이해가 되기 시작했습니다.

 

 

세 번째 복습 때

이 때는 강의를 보지 않고도 BFS, DFS, 동적계획법 빼고는 혼자 힘으로 다 풀 수 있게 됩니다. 물론 이전에 봤던 문제 이긴 하지만요. 문제가 그렇게 쉽게 외워지는 게 아니기 때문에 해당 문제에 대해 어떻게 접근해야 할지 고민하는 과정은 비슷합니다. 하지만 시간이 단축되기 때문에 기분이 정말 좋아집니다.

 

프로그래머스 기준으로는 2단계 중간난이도까지 머리를 굴리면 혼자 힘으로 풀 수 있을 정도가 됐고요. 3단계부터는 머리를 엄청나게 굴려야겠지만 접근 방식에 대한 감이 생기는 정도가 됩니다.

 

 

공부 주기

고백하자면, 프론트엔드가 알고리즘이 왜 필요하지? 라는 생각으로 처음에는 일주일에 두세 개 밖에 안 풀었습니다.

요즘도 그렇게 많이 하는 건 아니지만 하루에 한 개~두 개 정도 풀고 있습니다.

하루에 공부하는 양보다 꾸준히 하는 게 더 낫겠거니 하는 마음으로요.

 

 

 

 

 

 

총평

초반에 저처럼 알고리즘이 막연하게 두려운 기분이 들 때 이 강의를 함께 수강하면 스스로 할 수 있다는 자신감이 생겨서 좋았습니다. 아무래도 문제가 풀리지 않으면 쉽게 지치고 슬럼프가 오기 마련인데, 안되는걸 계속 잡고 있기보다는 저처럼 일단 개념부터 먼저 이해하고 가는 방식도 나쁘지 않은 것 같아요.

 

 

그리고 노베이스로 알고리즘 개념을 모르는 상태로 자바스크립트 알고리즘을 풀면 어려운 건 당연한 것 같습니다. 생각해 보면 컴퓨터공학과에서는 알고리즘에 대한 강의를 들어야 하는데, 저처럼 비전공자이신 분들은 이러한 알고리즘 기초 개념도 없기 때문에 강의를 듣는 것을 추천 드립니다. 

 

 

다른 수강평을 빌리자면 '너무 쉽다'는 말이 많은데, 이건 기본기가 이미 갖춰져 있는 분들의 평인 것 같고요. 심화 학습을 하기 전 토대를 닦고 들어가는 것에 이만한 강의는 없는 것 같습니다. 

 

댓글