-
알고리즘 학습 방법Algorithm/이론 2018. 9. 6. 14:58
※ 알고리즘 학습 방법 순서도(커리큘럼)
1. 알고리즘과 입/출력
2. 자료구조 1
- 큐/스택/데크
- 문자열
3. 다이나믹 프로그래밍 1
4. 알고리즘 수학 1
- GCD/LCM
- 소수
5. 정렬
6. 그래프 1
- 정의와 표현방법
- 탐색 (DFS/BFS)
- 모델링
7. 트리 1
- 순회
- 저장
- 트리와 관련한 알고리즘
8. 그리디
9~10. 분할 정복
- 이분 탐색
- 머지 소트/퀵 소트
- 가장 가까운 두 점
11~12. 완전 탐색
- 비트마스크
- 순열
- 부르트 포스
- 백트래킹
13. 자료구조 2
- 스택 2
- 서로소 집합(Disjoint-Set)
- 힙과 힙 소트
- 이진 탐색 트리 (BST)
14. 다이나믹 프로그래밍 2
15. 수학 2
- 분할 정복
- 이항 계수
- 카탈란 수
- 오일러 피 함수
- 확장 유클리드 알고리즘
16. 그래프 2
- 위상 정렬
- 최소 스패닝 트리 (MST)
- 최단 경로 알고리즘 (벨만/다익스트라/플로이드와샬)
17. 트리 2
- 최소 공통 조상 (LCA)
18. 완전 탐색 2
19~20. 구간 트리
21. 다이나믹 프로그래밍 3
22~23. 네트워크 플로우
- 최대 유량
- 이분 매칭, 민 컷, 최소 버텍스 커버, 최대 독립 집합
- 모델링
- 최소 비용 최대 유량 (MCMF)
24. 구간 트리 활용
26. 그래프 3
- 강연결 요소 (SCC)
- 단절점과 단절선
- 2-SAT
27. 다이나믹 프로그래밍 4
28. 문자열 매칭
- KMP, 트라이, 아호코라식, Suffix Array
29. 기하
- CCW, 선분 교차 판별
- 볼록 껍질(컨벡스 헐; Convex Hull)
- 라인 스위핑
30. 알고리즘 게임
- 돌 게임, 님 게임 등
31. 다이나믹 프로그래밍 5