
📝 복잡도(Complexity) > 알고리즘의 복잡도는 알고리즘이 실행되는 동안 소요되는 자원의 양 또는 알고리즘의 성능을 수학적으로 나타낸 것이다. 일반적으로 시간 복잡도와 공간 복잡도로 나뉘어진다. 시간 복잡도(Time Complexity): 입력 크기에 따라 소

1. 완전 탐색(Exhaustive Search)이란? > 완전 탐색이란 문제의 해법으로 생각할 수 있는 모든 경우의 수를 나열해 보고 확인하는 기법이다. 모든 경우의 수를 고려하기 때문에 수행 속도는 느리지만, 해답을 보장한다는 특징이 있다. 경우의 수가 상대적으로

1. 재귀함수(Recursive function)란? > 재귀함수(Recursive function)란 함수 내에서 자기 자신을 호출하는 형태의 함수이다. 문제를 동일하면서 더 작은 문제로 분리하여 해결하는데, 현재 해결해야 하는 일을 다음으로 넘긴다 생각하면 된다.

1. 그래프(Graph)란? 그래프는 정점(Vertex)들의 집합과 이들을 연결하는 간선(Edge)들의 집합으로 구성된 자료 구조이다.

1. 그래프 순회 > 📝 그래프 순회란 비선형 구조인 그래프로 표현된 모든 정점을 빠짐없이 탐색하는 것을 의미한다. 주요 그래프 순회 알고리즘에는 DFS와 BFS가 있다. 2. DFS와 BFS ☑️ 깊이 우선 탐색(Depth First Search) 개념: 시작

1. DP(동적 계획법)란? 동적 계획법은 그리디 알고리즘과 같이 최적화 문제를 해결하는 알고리즘이다. 동적 계획법은 먼저 작은 부분 문제들의 해를 구하고 이들을 이용하여 보다 큰 크기의 부분 문제들을 해결하여, 최종적으로 원래 주어진 문제를 해결하는 알고리즘

투 포인터와 슬라이딩 윈도우 알고리즘은 배열, 문자열, 리스트와 같은 순차적인 데이터 구조에서 연속적인 부분 집합을 처리하는 알고리즘 기법이다. 이중 for문을 사용하여 시간 복잡도가 $O(N^2)$인 작업을 $O(N)$으로 최적화 시키는데 사용한다. 두 알고리즘의 차