(1) 코테 접근방식
국내 코딩 테스트는 시간복잡도에 의해서 문제 유형이 나뉩니다. (공간복잡도에 의한 유형은 거의 없음)
따라서, 코딩을 하기 전에
(1) 문제에 대한 이해를 바탕으로 (step1 - 문제 이해)
(2) 입력 제한을 통해 문제의 유형을 파악합니다 (step2 - 접근방법)
(3) 시간 복잡도를 계산해보고, 슈도 코드를 짭니다 (step3 - 코드설계)
(4) 구현은 문제당 1시간이 주어진다고 했을 때, 15분이면 됩니다. (step4 - 코드구현)
이렇게 문제를 풀기 위해서는 몇 가지 지식이 체화되어야 하는데, 다음과 같습니다.
1. 문제 이해 는 다음을 바탕으로 합니다.
입력과 아웃값을 확인합니다. 상황을 가정해봅니다.
2. 접근 방법 은 다음을 바탕으로 합니다.
문제상황을 단순화, 극한화하여 생각해봅니다.
자료구조 및 문제패턴을 파악합니다.
그러기 위해서는 아래와 같은 자료구조 및 주요 문제패턴(알고리즘)을 숙지해야합니다.
3. 자료구조 및 주요 문제패턴(알고리즘) 을 숙지
선형 자료구조 : list, queue, stack, hash
비선형 자료구조 : tree, graph
자료구조 별로 이어서 포스팅 하겠습니다 :)
해당 시리즈의 포스트는 인프런에서 제공하는 개발남노씨의 코딩테스트 강의 를 바탕으로 작성하였습니다.
Leave a comment