티스토리 뷰
이 글을 보기 전
아마 대부분 이 글을 보는 사람들은 코딩테스트를 처음 준비하거나 다른 방법이 있을까 라는 기대감에 들어왔을거다.
우선 처음부터 실망감을 안겨드려야 할 것 같다.
개인적인 의견으로는 코딩테스트를 준비하는 데 있어서 절대적 양이 필요하다. (물론 원래 코테를 잘하시는 분들은 이 글을 볼 일이 없을 거다.)
하지만 다들 이 말을 원해서 오지는 않을 것이다!
걱정마라!
여러분도 이렇게 한다면 더 좋은 결과가 있을거라 생각한다.(필자 또한 코딩테스트를 그렇게 좋아하지는 않았다. 하지만 어쩌겠는가 대규모 인원을 단시간에 평가할 수 있는 수단은 현재로서는 코딩테스트만 한 것이 없다.)
사이트 추천
우선 알고리즘 연습하는 사이트를 알려줄려고 한다.
https://leetcode.com/problemset/all/
다들 아실 것 같지만 리트코드 를 추천한다.
필자 또한 프로그래머스, 백준 등 다양한 알고리즘 사이트를 풀어봤지만 가장 깔끔하고 오로지 알고리즘에 대해서 묻는 사이트는 리트코드 였다.
그럼 어떻게 시작하였는가?
필자는 다음과 같이 진행하였다.
지금은 안 보이는 것 같지만 예전에는 TOP 100 이 있었다.
그 문제를 거의 외우다시피 했으며 여러 discuss를 참고하여 풀었다.
지금은 여러 플랜을 추천하고 있는데 만약에 처음이라면 Data Structure Plan을 추천한다.
기본적으로 문제를 볼 때 어떤 자료구조를 써야할 지 알아야 한다. 그렇기에 Data Structure Plan 필히 먼저 하시는 것을 강력 추천한다.
그리고 나서 자신이 부족한 부분에 대한 영역을 채워나가시면 될 것 같다.
나는 어떻게 실천했는가?
우선 부끄럽지만 제가 예전에 작성했던 플래너의 일부분을 보여주고자 한다.
해당 사진을 보여주고자 한 것은 날짜와 Sliding Window maximum 을 보여주기 위함이다. (사진을 보면 아시다시피 일주일 후에 풀었음을 알 수 있다. 필자도 다시 보니 놀랐는데 이때 다시 누적으로 7문제 정도 풀었다. )
저는 우선 망각곡선의 규칙을 적용하여 문제를 풀었다. (초반이긴 하지만 대략 6개월 가까이 지켜왔다.)
START | 문제를 다 푼다. |
10분 후 | 문제만 보고 머릿 속으로 해당 로직을 그려본다. |
자기 전 | 다시 한 번 풀어본다. |
일주일 후 | 다시 풀어본다. |
한달 후 | 다시 풀어본다. |
이렇게 누적형식으로 풀다 보면 해당 패턴들이 익숙해지게 된다.
그렇게 대략 100문제 가까이 풀었을 때 왠만한 기업 코테는 다 통과를 했었다. ( 초기에는 대기업까지는 통과를 못했다 ㅠㅠ)
하지만 이렇게 1년 가까이 한 결과 네카라쿠배 안에 드는 기업에 취업을 하게 되었고 붙을 수 있었던 요인의 주된 요인은 위와 같은 패턴이 있었기에 이렇게 되었다고 생각한다.
어떻게 풀어야 하는가?
필자는 개인적으로 변수명, 메소드 분리, 적절한 자료구조 이 세박자가 중요하다고 생각한다.
어떤 사람은 그냥 점수만 적절하게 넘기면 끝나는 거 아니냐고 물을 수 있는데 진짜 그렇게 할 수도 있다.
하지만 누군가는 정말 여러분의 코드를 보는 사람이 있을 것이고 변수명이 'a' , 'b', 'aa' 이런식이면 가차 없이 탈락을 외칠 것이다.
그리고 대기업에서 스타트업으로 내려갈수록 여러분의 코드를 열 확률은 올라갈 것이고, 열었을 때 변수명 메소드의 적절한 분리 등 클린 코드를 지향하는 가에 대한 평가를 내릴 것이다.
https://vixxcode.tistory.com/218?category=962977
엄청 적절한 예시는 아니지만 풀 때 이렇게 푼다면 면접관이 만일 물어본다고 했을 때 다른 면접자 보다는 말할 거리도 생기지 않을까 싶다.
마지막 한마디
여러분도 열심히 준비만 한다면 코딩테스트라는 벽을 허물 수 있을 것이다.
개개인마다 열심의 기준은 다르겠지만 필자가 생각하는 열심의 기준은 위에서 소개한 것 같다.
물론 제가 투자한 노력의 절반도 안되는 것으로 통과한 사람들도 많을 것이다.
필자는 알고리즘이 다른 사람들에 비해서 많이 부족하고 이해도가 없었기에 이렇게라도 안하면 안된다는 마인드로 철저한 계획과 이에 대한 실행으로 붙었던 것 같다.
그러니 "여러분도 주변사람들을 비교하지 말고 나 자신과 비교하는 자세를 가지자" 라는 덕담을 마지막으로 글을 마무리 할려고 한다.
'회고록 > 가이드' 카테고리의 다른 글
나는 면접을 이렇게 준비했다 (3) | 2022.09.17 |
---|---|
나는 이력서를 이렇게 준비했다 (0) | 2022.09.17 |
- Total
- Today
- Yesterday
- DRF
- 그래프
- dockerignore
- 프로그래머스
- Command Line
- Collections
- thread
- Pattern
- PostgreSQL
- Java
- 면접
- 파이썬
- 알고리즘
- 자바
- docker-compose
- Python
- setattr
- docker
- 2021 KAKAO BLIND RECRUITMENT
- Linux
- env
- 백준
- ubuntu
- Spring
- django
- Celery
- postgres
- headers
- BFS
- 카카오
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |