개발자를 목표로 잡은지 꽤나 시간이 흘렀는데 코딩테스트를 아직도 마스터 하지 못 했다.
이번 달은 진짜 제대로 각잡고 마스터 해보려고 한다...
코딩테스트 무조건 합격시켜주는 7단계 학습법
앞선 글에서 코딩테스트 합격을 위해서는7단계 학습법 중에서 단 하나도 빼먹지 않고차근차근 수행해나가야한다고 했었죠. 7단계 학습법 다시 확인해볼까요? 코딩테스트 7단계 학습법코테 언어
lover-orpheus.tistory.com
이 분 블로그를 참고해서 7단계 학습법을 준수하면서 ㅜㅜ
1. 코테 언어와 문법
2. 자료구조 완벽 이해
3. 알고리즘 완벽 이해
4. 알고리즘 유형별로 중급 난이도 문제
5. 복잡한 구현 능력 키우기
6. 랜덤문제로 문제 유형 파악
7. 코테 환경처럼 시간 제한두고 문제 풀이
여기서 내가 자바 언어를 알고있고 자료구조의 특징을 알고 있다고 해도 직접 구현할 수 있을지는 사실 의문이고 그럼 결국 설명하지도 못하고 써먹지도 못 할테니 .. 무용지물 !
세부 계획
1. 코테 언어와 문법
나는 JAVA로 코딩테스트를 준비할 것이다.
언어에 익숙은 하지만 아직도 코테에서 쓰이는 것들 중 잘 모르는 메소드나 라이브러리들도 있다.
위 블로그에서 추천해주신 코드업에서 100문제를 일주일 안에 풀 것이다.
https://codeup.kr/problemsetsol.php?psid=23
문제집 / C언어 기초 100제
codeup.kr
2. 자료구조 완벽 이해
스택, 큐, 데크 알고있고 개념은 알지만 구현을 하라면 좀 막막하기도 하다.
완전히 알지 못 한다는 뜻이되겟지..
예전에도 했던 적은 있지만 다시한 번 개념을 다지면서 자료구조 유형별 문제를 풀 것이다.
https://www.acmicpc.net/step/11
3. 알고리즘 완벽 이해
코딩테스트에서 출제되는 알고리즘들의 원리가 무엇인지, 구현은 어떻게 하는지 등을 스스로 이해하고 구현할 줄 알아야함
각 알고리즘 유형별로 실버 하위 수준의 기초문제들을 풀고 유형에 대한 감잡기.
+ 입력 값의 범위가 어느정도의 크기로 들어오는지의 감을 잡아라 !
이 정도 수준에서는 한 시간 정도 고민 후 모르겠으면 다른 사람 코드보기
4. 알고리즘 유형별로 중급 난이도 문제
각 유형별로 실버 상위 ~ 골드 하위 반복해서 풀기
일주일에 한 유형을 하루에 한, 두 문제씩
모른다고 답 보기 x
2시간 정도는 고민하고 이런저런 시도하기
5. 복잡한 구현 능력 키우기
알고리즘 하나 쓴다고 해결되지 않고 문제의 껍데기를 벗기는 복잡한 구현 능력을 키워야함.
6. 랜덤문제로 문제 유형 파악
매주 4-5개 유형의 문제들을 3개씩 뽑아 랜덤으로 문제 풀기
난이도, 유형도 기록하지 말고 랜덤으로
문제를 풀면서 어떤 알고리즘으로 푸는 문제일지 고민하고 노트에 기록.
정답을 맞추기까지 어떤 고민, 왜 틀렸고, 정답 포인트는 내 생각과 무엇이 달랐는지 생각.
7. 코테 환경처럼 시간 제한두고 문제 풀이
궁극적으로 골드 하위 문제를 40분 안에 풀 수 있게 노력해라.
매주 하루 정도는 코테 실전 연습날
실버 ~ 골드 문제로 3문제 뽑고 2시간 제한을 둔다.
이때 해야할 것은 어떤 문제에 얼만큼의 시간을 분배할 지,
어떤 문제를 포기하더라도 어떤 문제의 예외케이스까지 고려할지를 연습
정말 좋은 글이라 조금씩 요약해가며 적어봤다.
내 수준에 맞춰서 세부 계획 수정은 있겠지만 큰 틀은 이걸 따라해보려고 한다 !
정말 이번년도 안에 코테를 마스터 할 수 있길 ....
마스터까진 못 하더라도 어느정도 할 수 있다는 자신감을 가질 실력이 되길..