두 달여 전 알고리즘에 관련하여 온라인상에서 많은 논란이 있었던 것으로 기억한다. 물론 각자의 관점에 따라 생각이 다르겠지만, 어찌 되었건 현재에도 컴퓨터 과학에서 기초로 배우는 학문(?)이라는 것은 변함없다. 참고로 나는 알고리즘에 대한 지식이 얕고 퀴즈에 대해 두려움을 가지고 있는 상태다.

아직 실무에서 알고리즘의 중요성을 뼈저리게 느끼고 사용해본 입장은 아니다. 오히려 작년 취업을 준비할 때와 올해 이직을 준비할 때의 채용 과정에서 필요성을 더 느꼈다. 알고리즘의 개념 자체는 이해하기 충분하지만, 이를 응용하여 논리적으로 문제를 푸는 것은 단기간에 실력이 늘기 어렵다.

스스로도 많이 부족하다는 것을 느꼈고 코딩 테스트를 잘하고 싶다는 마음이 늘 있었다. 그래서 나의 코딩 스킬을 길러보고자 앞으로의 과정을 진행한다.

알고리즘 문제 풀이 사이트 격파

포켓몬스터에서 체육관 관장을 격파하는 도장 깨기처럼 각 문제 풀이 사이트에서 제공하는 문제를 풀어보자.

풀이 기준

  • 어떻게 하면 더 좋은 코드를 작성할 수 있을까 고민한다.
  • 하나의 문제에 대해 짧게는 3일, 길게는 6일을 투자하여 천천히 진행한다.
  • 매주 월요일을 시작으로 일주일에 최소 하나의 문제를 시작한다.
  • 문제의 Task score 값이 100% 달성을 목표로 한다.

작성 방법

  • Markdown 형식을 사용하여 작성한다.
  • 문제의 제목과 설명을 두서에 기입한다.
  • 문제의 풀이를 작성할 때는 count, code, score 등의 정보를 포함한다.
  • 풀이 진행 과정에 대한 한 줄의 코멘트를 남긴다.

재도전

  • 주어진 기한 내에 Task score 100%를 달성하지 못했거나
  • 만족스럽지 않은 풀이 방법으로 통과한 경우
  • 해당 문제를 기록해 놓았다가 다음에 다시 한번 살펴본다.

이 모든 것은 GitHub Repo에 기록하자.