자료구조 알고리즘
기초 튼튼히 다지기
Codetrail3 / 6
문제 해결에 자주 쓰이는 알고리즘과 자료구조 개념을 배우게 됩니다.
10개의 Chapter들
자료구조 알고리즘
기초 튼튼히 다지기
Codetrail3 / 6
문제 해결에 자주 쓰이는 알고리즘과 자료구조 개념을 배우게 됩니다.
10개의 Chapter들
기본 개념 설명 & 연습 문제
상세한 설명과 그림으로 개념을 학습하세요. 배운 개념을 적용하는 연습 문제로 마무리합니다.
연습 문제
배운 내용을 다양한 연습 문제에 적용해보세요. 학습한 개념의 빈틈을 체크할 수 있습니다.
테스트 문제
Chapter의 마지막 단계는 솔루션이나 토론 기능 없이 스스로 풀어보는 테스트 문제로 구성됩니다. 난이도가 약간 더 높아 실력을 완성하기에 좋습니다.
1
시간, 공간복잡도
시간복잡도와 공간복잡도의 정의와 그 쓰임에 대해 배우게 됩니다.
수도코드
점근 표기법
시간복잡도의 정의
반복문의 시간복잡도
재귀함수의 시간복잡도
공간복잡도
2
배열, 연결 리스트
배열, 연결 리스트의 정의와 그 차이에 대해 배우게 됩니다.
배열
Dynamic Array
단일 연결 리스트
Doubly-LinkedList
Iterator
원형 연결 리스트
3
정렬
각각의 정렬에 대한 정의와 그 특징에 대해 배우게 됩니다.
거품 정렬
선택 정렬
삽입 정렬
기수 정렬
정렬 속도 비교
병합 정렬
퀵 정렬
힙 정렬
Stable Sort
In-Place Sort
4
이진탐색
이진탐색과 순차탐색의 차이와 lower/upper bound의 개념에 대해 배우게 됩니다.
이진탐색
Lower/Upper Bound
5
스택, 큐, 덱
스택, 큐, 덱의 정의와 그 특징에 대해 배우게 됩니다.
Stack
Queue
Deque
6
트리
트리의 정의와 종류, 그리고 탐색하는 방법에 대해 배우게 됩니다.
트리
이진 트리 개념
이진 트리와 탐색
이진 탐색 트리
Heap
7
해싱
해시의 종류와 충돌을 해결하는 방법에 대해 배우게 됩니다.
해싱
8
DP
DP의 정의와 해당 개념을 이용해 풀리는 대표적인 문제들을 접해보게 됩니다.
동적계획법
Memoization
Tabulation
subproblem을 그대로 합치면 되는 DP
격자 안에서 한 칸씩 전진하는 DP
조건에 맞게 선택적으로 전진하는 DP
아이템을 적절히 고르는 문제
String Matching
Greedy Algorithm
9
그래프 탐색
그래프의 종류와 탐색 방법에 대해 배우게 됩니다.
Graph 정의
Graph 구현
DFS
BFS 탐색
가중치가 동일한 그래프에서의 BFS
10
그래프 알고리즘
그래프 내에서의 최단거리를 구하는 알고리즘과 최소비용신장 트리에 대해 배우게 됩니다.
Dijkstra
Floyd Warshall
Kruskal
Prim
Topological Sort
기본 알고리즘과 자료구조 용어에 대한 포괄적 이해
특정 문제 유형에 가장 적합한 자료구조나 알고리즘을 식별하는 능력
알고리즘 관련 논의와 문제 해결 방법을 읽고 이해하는 자신감
다양한 알고리즘과 자료구조의 효율성을 분석하는 능력
기본적인 프로그래밍 지식은 있지만 알고리즘과 자료구조에 대한 이해를 깊이 있게 하고 싶은 분
알고리즘 학습이 어려웠던 경험이 있어 체계적인 학습 방법이 필요한 분
알고리즘과 자료구조 지식을 복습하고 싶은 분
코딩 테스트를 준비하며 알고리즘 개념의 탄탄한 기초가 필요한 분
코딩 문제 풀이 관련 토론과 해설에 사용되는 용어를 이해하고 싶은 분
코딩 경험은 있지만 고급 문제 해결 기법이 부족한 분
배열만 사용하는 것에 한계를 느끼고 더 효율적인 문제 해결 방법을 찾는 분