단계 1

기초 다지기

기초적인 구문 규칙, 변수, 배열 등 가장 기본적인 자료구조와 알고리즘 문법을 먼저 익히는 입문 단계입니다.

#입출력#분기문#반복문#1차원 배열
단계 2

수학적 사고

수학적 개념과 수식을 활용하여 문제를 분석하고 해결하는 능력을 기릅니다.

#사칙연산#약수와 배수#소수#조합론
단계 3

문자열 처리

문자열 탐색, 변환, 파싱 등 문자열을 다루는 다양한 기법을 학습합니다.

#문자열#정규표현식#파싱#아스키코드
단계 4

기본 자료구조

스택, 큐, 덱 등 기본적인 자료구조의 원리를 이해하고 활용합니다.

#스택#큐#덱#연결 리스트
단계 5

정렬과 탐색

다양한 정렬 알고리즘과 이분 탐색의 원리를 이해하고 적용합니다.

#버블 정렬#병합 정렬#이분 탐색#투 포인터
단계 6

완전 탐색

가능한 모든 경우를 탐색하여 해를 구하는 전략을 학습합니다.

#브루트포스#백트래킹#비트마스크#순열
단계 7

동적 계획법

부분 문제의 최적해를 이용하여 전체 문제의 최적해를 구하는 핵심 알고리즘입니다.

#메모이제이션#탑다운#바텀업#배낭 문제
단계 8

그리디 알고리즘

매 순간 최적의 선택을 통해 전체 최적해를 구하는 전략을 학습합니다.

#탐욕법#활동 선택#최소 스패닝#구간 스케줄링
단계 9

그래프 탐색

BFS, DFS를 기반으로 그래프 구조를 탐색하고 응용하는 방법을 배웁니다.

#BFS#DFS#위상 정렬#연결 요소
단계 10

최단 경로

다익스트라, 벨만-포드 등 최단 경로 알고리즘을 학습합니다.

#다익스트라#벨만-포드#플로이드-워셜#SPFA
단계 11

트리

트리 구조의 성질을 이해하고 다양한 트리 알고리즘을 학습합니다.

#이진 트리#LCA#트리 DP#오일러 경로
단계 12

고급 자료구조

세그먼트 트리, 펜윅 트리 등 고급 자료구조를 활용한 문제를 해결합니다.

#세그먼트 트리#펜윅 트리#유니온 파인드#해시