최근 포스트

[Algorithm] 선택정렬

1 분 소요

선택 정렬 선택 정렬은 주어진 자료 중 가장 작은(혹은 가장 큰) 값의 원소부터 차례대로 선택하여 위치를 교환해 나간다. 학교 다닐 때 키순서대로 줄을 섰던 것을 떠올리면 된다. 가장 작은(혹은 가장 큰) 수부터 정렬하기 시작하여 위치를 교환하는 정렬 알고리즘이다. 이를 적용하...

[Algorithm] 버블정렬

1 분 소요

개요 인접한 두 원소를 비교하며 자리를 계속해서 교환해 나가는 정렬 방식이다. 매우 직관적이나, 그만큼 비효율적이다. 원리 각 단계마다 다음과 같은 과정을 거친다. 단계별로 모든 원소에 대해 인접한 두 값을 비교한다. 앞의 값이 뒤의 값보다 크다면(혹은 작다면) 자...

[Algorithm] 동적 계획법

4 분 소요

알고리즘 스터디 DP팀 발표 내용 및 SW Expert Academy 동적 계획법 강의 내용을 참고하였습니다. 정의 동적 계획법(Dynamic Programming)은 최적화 문제를 해결하는 알고리즘이다. 그리디 알고리즘과 비슷하게, 이 알고리즘 역시 문제를 해결하기 ...

[Data Structure] 연결 리스트(Linked List)

9 분 소요

연결 리스트란, 각 노드가 데이터와 포인터를 가지고 연결되어 있는 방식으로 데이터를 저장하는 자료 구조이다. 데이터를 담고 있는 노드들이 포인터를 통해 서로 연결된다.

[Algorithm] 그리디(탐욕) 알고리즘

1 분 소요

개념 탐욕 알고리즘은 각 상황에서 최선의 결정을 하여, 최종적으로 최적의 해를 찾아내는 방식이다. 미래를 생각하지 않고, 각 단계 단계만 생각한다고 하여 탐욕적이라고 한다. 엄밀히 말하면, 버블 정렬, 퀵 정렬과 같이 구체적인 알고리즘이라기 보다는, 문제를 해결하는 논리 설...