1. | 알고리즘의 정의, 표기 그리고 문제 표기 방법 | 알고리즘의 정의, 표기 그리고 문제 표기 방법을 이해한다. 알고리즘의 정의, 표기 그리고 문제 표기 방법을 이해한다. 알고리즘의 정의, 표기 그리고 문제 표기 방법을 이해한다. | ||
효율적인 알고리즘 개발의 중요성 | 효율적인 알고리즘 개발의 중요성을 이해한다. | |||
n-번째 피보나찌 알고리즘 | n-번째 피보나찌 알고리즘을 이해한다. | |||
2. | 알고리즘의 분석 | 알고리즘 분석을 학습한다. | ||
차수 | 차수에 대한 개념을 이해한다. | |||
Ω, θ 표기법 | Ω, θ 표기법을 이해한다. | |||
3. | 분할 정복 기법 | 분할 정복 개념을 학습한다. | ||
이분검색 알고리즘 | 재귀적인 방법의 이분검색 알고리즘을 학습한다. | |||
이분검색 알고리즘의 시간복잡도 분석 | 알고리즘의 시간 복잡도를 분석한다. | |||
4. | 합병정렬 알고리즘 | 힙정렬 알고리즘을 이해한다. | ||
합병정렬 알고리즘의 시간 복잡도 | 알고리즘의 시간 복잡도를 분석한다. | |||
빠른 정렬 알고리즘 | 빠른 정렬 알고리즘을 이해한다. | |||
5. | 빠른 정렬 알고리즘의 분석 | 알고리즘의 시간 복잡도를 분석한다. | ||
행렬 곱셈과 쉬트라센 알고리즘 | 행렬 곱셈과 쉬트라센 알고리즘을 이해한다. | |||
동적 계획법 | 동적 계획법의 설계 방법을 학습한다. | |||
6. | 이항계수 구하기 | 이항계수 알고리즘을 학습한다. | ||
최단경로 알고리즘 | 최단경로의 설계전략을 이해한다. | |||
최단경로를 구하는 Floyd 알고리즘 | Floyd 알고리즘을 학습한다. | |||
7. | 동적계획법에 의한 설계 절차 | 동적계획법에 의한 설계 절차를 이해하고 최적화 문제를 다룬다 | ||
연쇄 행렬곱셈 알고리즘 | 연쇄 행렬곱셈 알고리즘을 학습한다. | |||
최소곱셈 알고리즘 | 최소곱셈 알고리즘을 학습한다. | |||
8. | 탐욕적인 방법의 원리와 종류 | 탐욕적인 방법의 설계절차를 이해한다. | ||
최소비용 신장 트리 | 최소비용 신장트리의 개념을 이해한다. | |||
프림의 최소비용신장 트리 알고리즘(추상적) | 추상적으로 프림 알고리즘을 이해한다. | |||
9. | 프림의 최소비용신장 트리 알고리즘 | 프림의 최소비용 신장트리를 이해한다. | ||
크루스칼 알고리즘 및 분석 | 크루스칼 알고리즘과 분석을 수행한다. | |||
프림과 크루스칼 알고리즘의 비교 | 프림과 크루스칼 알고리즘을 비교 분석한다. | |||
10. | 다익스트라의 최단 경로 알고리즘 | 다익스트라의 최단 경로 알고리즘을 학습한다. | ||
되추적 기술 및 알고리즘 개념 | 되추적 기술 및 알고리즘 개념을 이해한다. | |||
4-여왕말 문제의 상태공간 트리 | 4-여왕말 문제의 상태공간 트리를 구성한다. | |||
11. | n-여왕말 알고리즘 | n-여왕말 알고리즘을 학습한다. | ||
n-여왕말 알고리즘의 분석 | 알고리즘의 시간복잡도를 분석한다. | |||
몬테카르로 기법을 사용한 백트랙깅 알고리즘의 수행시간 추정 | 몬테카르로 기법을 사용한 백트랙깅 알고리즘의 수행시간 추정을 이해한다. | |||
12. | 부분집합의 합 구하기 알고리즘 | 부분집합의 합 구하기 알고리즘을 학습한다. | ||
그래프 색칠하기 알고리즘와 해밀토니안 회로 | 그래프 색칠하기 알고리즘와 해밀토니안 회로을 학습한다. | |||
계산 복잡도 | 정렬문제에서 계산 복잡도를 이해한다. | |||
13. | 선택정렬 알고리즘과 분석 | 선택정렬 알고리즘과 분석을 이해한다. | ||
힙정렬 알고리즘 | 힙정렬 알고리즘을 학습한다. | |||
합병정렬, 빠른 정렬, 힙정렬의 비교, 분배에 의한 정렬 | 합병정렬, 빠른 정렬, 힙정렬을 비교 분석하고, 분배에 의한 정렬을 학습한다. |