정렬 알고리즘
선택 정렬 |
버블 정렬
|
삽입 정렬 |
퀵 정렬
|
병합 정렬 |
힙 정렬
|
계수 정렬
|
기수 정렬
|
탐색 알고리즘
선형 탐색 |
이진 탐색
|
이진 탐색 트리 |
해시 탐색
|
삼분 탐색 |
(문자열) KMP 알고리즘
|
(문자열) 라빈-카프 알고리즘
|
그래프 알고리즘
(기본) 깊이 우선 탐색(DFS) |
(기본) 너비 우선 탐색(BFS)
|
(최단 경로) 다익스트라 알고리즘 |
(최단 경로) 벨만-포드 알고리즘
|
(최단 경로) 플로이드-워셜 알고리즘 |
(MST) 크루스칼 알고리즘
|
(MST) 프림 알고리즘
|
(위상 정렬) 위상 정렬
|
(위상 정렬) 칸 알고리즘 |
동적 계획법
메모이제이션 |
탑다운 방식
|
바텀업 방식 |
피보나치 수열
|
배낭 문제 |
최장 공통 부분 수열(LCS)
|
최장 증가 부분 수열(LIS)
|
행렬 곱셈 순서 결정
|
그리디 알고리즘
동전 거스름돈 문제 |
회의실 배정 문제
|
최소 신장 트리(크루스칼, 프림) |
허프만 인코딩
|
비트 마스킹
부분 집합 생성 |
비트마스크 DP
|
해밍 거리 계산
|
문자열 알고리즘
KMP 알고리즘 |
라빈-카프 알고리즘
|
아호-코라식 알고리즘 |
트라이(Trie)
|
접미사 배열 |
롤링 해시
|
기하 알고리즘
회전 방향 판별(CCW) |
볼록 껍질(최소한의 다각형)
|
최근접 점 쌍(가장 가까운 두 점) |
기본 개념
배열(Array) |
포인터
|
구조체(Struct)&클래스(Class) |
템플릿
|
선형 자료구조
연결 리스트(단일,이중,원형) |
스택(Stack)
|
큐(Queue) |
덱(Deque)
|
고급 자료구조
비트마스크 |
트라이(Trie)
|
세그먼트 트리 |
펜윅 트리
|
유니온 파인드 |
스킵 리스트
|