본문 바로가기
코딩테스트/가이드 & 마음가짐

코딩테스트 공부 순서

by 학습하는 청년 2024. 12. 25.

최종 수정 24.12.25

코딩테스트 공부 방법

A. 자료구조를 배우면서 알고리즘을 푸는 방법

장점

  • 실전 적용이 즉각적으로 가능하다. 예를 들어, 스택을 배운 직후 DFS를 배우면 스택이 실제로 어떻게 쓰이는지 바로 이해할 수 있다.
  • 이론과 실제 활용을 동시에 배워 지루함을 덜 수 있다.
  • 자료구조와 알고리즘의 연관성을 자연스럽게 이해할 수 있다. 예를 들어, 트리를 배운 후 바로 트리 순회 알고리즘을 배우면 개념과 실전이 더 잘 연결되는 느낌이 든다.

B. 자료구조를 먼저 공부하고 알고리즘을 푸는 방법

장점

  • 기초가 탄탄해진다. 알고리즘은 대부분 여러 자료 구조를 복합적으로 사용하므로, 자료구조에 대한 이해가 먼저 필요하다.
  • 학습 구조가 체계적이다. 기초부터 응용까지 단계적으로 진행되어 개념을 놓치지 않고 배울 수 있다.
  • 알고리즘을 배울 때 자료구조 선택에 대한 고민 없이 알고리즘 로직 자체에 집중할 수 있다.

 

나는 방법 B으로 공부할 생각이다. 이런 형태의 공부가 나에게 맞고, 마음이 좀 더 편한 느낌이다.

 

Q. 자료구조 및 알고리즘을 공부하는 순서와 그 이유는?

 

순서 자료구조 이유
1 배열 가장 기본이 되는 자료구조
다른 모든 자료구조의 기반이 됨
가장 단순하면서 필수적인 개념
2 스택 배열을 기반으로 구현 가능한 단순한 구조
LIFO 구조로 개념 이해가 쉬움
DFS의 기초가 되는 자료구조
3 스택과 비슷한 난이도의 선형 구조
FIFO 구조로 스택과 대비되는 개념
BFS의 기초가 되는 자료구조
4 해시 배열의 확장된 개념
검색을 효율적으로 수행하는 방법 학습
key-value 구조의 이해 필요
5 트리 비선형 구조의 시작
계층적 데이터를 다루는 기본
이진 트리, 이진 탐색 트리의 기초
6 래프 가장 복잡한 자료구조
앞의 모든 개념이 총동원됨
실제 문제 해결에 광범위하게 활용

 

순서 알고리즘 이유
7 정렬 가장 기본적인 알고리즘
시간복잡도 개념을 이해하기 좋음
여러 알고리즘의 기초가 됨
8 이진 탐색 정렬된 데이터에서의 효율적인 탐색
분할 정복의 기본 개념 학습
시간복잡도 개선의 대표적 예시
9 DFS & BFS 그래프 & 트리 탐색의 기본
스택과 큐의 실제 활용
많은 문제의 기본 해결 방법
10 백트래킹 완전탐색의 최적화
DFS를 기반으로 한 심화 테크닉
가지치기 개념 학습
11 동적 계획법 최적화 문제 해결의 핵심
문제를 부분으로 나누는 방법
이전 모든 개념의 이해가 필요
12 그리디 최적해를 구하는 직관적 방법
DP(동적 계획법)와 대비되는 접근 방법
모든 개념을 종합적으로 활

댓글