전체 강의 구성은 https://code.plus/notice/16 를 참고해주세요.
프로그래밍 언어 (C++, Java)를 할 줄 알고, 기초 알고리즘을 배우는 강의입니다.
먼저, 알고리즘이 무엇인지, 어떻게 공부하는 것이 좋은지 알아봅니다. 그 다음으로 알고리즘의 효율성을 측정하는 방법 중 하나인 시간 복잡도에 대해서 배워봅니다.
스택 (Stack)에 대해서 집중적으로 배워봅니다. 스택을 사용하는 문제를 이용해 스택의 어떤 성질을 이용해서 문제를 해결할 수 있는지 알아봅니다. 큐(Queue)와 덱(Deque)은 이 챕터에서 소개만 합니다. 두 자료구조는 그래프와 BFS 챕터에서 집중적으로 다루게 됩니다.
문제를 푸는데 필요한 기본적인 수학 내용을 알아봅니다. 나머지 연산, 최대 공약수, 소수에 대해서 알아봅니다.
다이나믹 프로그래밍이 무엇인지, 난이도가 가장 낮은 문제들을 이용해 다이나믹 프로그래밍을 이해해 봅니다.