zwoong's Blog
bfs-and-dfs

검색 알고리즘 - 너비 우선 검색(BFS)

BFS(Breadth-First Search)는 BFS는 그래프의 정점을 레이어별로 탐색하는 기본적인 그래프 순회 알고리즘이다. 선택한 루트 노드에서 시작하여 다음 깊이 수준의 노드로 이동하기 전에 현재 깊이의 모든 인접 노드를 탐색한다. BFS는 최단 경로를 찾는 데 특히 유용하며 네트워킹, 경로 찾기 및 알고리즘 게임을 포함한 다양한 영역에 적용...

bfs-and-dfs

검색 알고리즘 - 깊이 우선 검색(DFS)

DFS(Depth-First Search) DFS는 트리나 그래프 데이터 구조를 탐색하는 데 사용되는 기본 검색 알고리즘이다. 선택한 노드(트리의 루트 또는 그래프의 모든 노드)에서 시작하여 각 분기를 따라 가능한 한 멀리 탐색한다. DFS 작동 방식 선택한 노드에서 시작: 시작점으로 노드를 선택한다. 노드를 방문으로 표시: 알고리즘이 ...

binary-search

검색 알고리즘 - 이진 검색

이진 검색 이진 검색은 정렬된 항목 목록에서 특정 항목을 찾는 효율적인 알고리즘이다. 가능한 위치를 하나로 좁힐 때까지 특정 항목을 포함할 수 있는 목록 부분을 반복적으로 절반으로 나누는 방식으로 작동한다. 이진 검색 작동 방식 초기 설정: ‘낮음’, ‘높음’, ‘중간’이라는 세 가지 지수로 시작하며, 처음에는 low가 목록의 첫 번째 인덱...

linear-search

검색 알고리즘 - 선형 검색

선형 검색 순차 검색이라고도 하는 선형 검색은 가장 간단한 검색 알고리즘 중 하나이다. 목록에서 특정 요소를 찾는 데 사용되며, 일치하는 항목을 찾거나 모든 요소가 검색될 때까지 목록의 각 요소를 대상 값과 순차적으로 비교한다. 선형 검색 작동 방식 첫 번째 요소에서 시작: 목록 또는 배열의 첫 번째 요소에서 시작 각 요소를 대상과 비교...

heap-sort

정렬 알고리즘 - 힙 정렬

힙 정렬 힙 정렬은 이진 힙 데이터 구조를 사용하여 요소를 정렬하는 비교 기반 정렬 알고리즘이다. 대규모 데이터 세트에서 우수한 성능을 발휘하고 최상의 경우와 최악의 경우 모두 O(n log n) 시간으로 정렬하는 기능으로 알려져 있다. Binary Heap(이진 힙) 이해하기 완전한 이진 트리로 왼쪽에서 오른쪽으로 마지막 레벨을 제외하고는 완전...

bubble-sort

정렬 알고리즘 - 버블 정렬

버블 정렬 버블 정렬(Bubble Sort)은 목록을 반복적으로 살펴보고, 인접한 요소를 비교하고, 순서가 잘못된 경우 교체하는 간단한 정렬 알고리즘이다. 목록이 정렬될 때까지 반복되며, 작은 요소가 목록의 맨 위(목록의 시작)로 “버블링”되고 큰 요소가 맨 아래(목록의 끝)로 가라앉는 방식에서 버블이라는 이름을 가진다. 버블 정렬 작동 방식 ...

merge-sort

정렬 알고리즘 - 병합 정렬

병합 정렬 병합 정렬(Merge Sort)은 배열이나 요소 목록을 정렬하는 분할 정복 알고리즘이다. 최악의 경우, 평균적인 경우, 최상의 경우에서 O(n log n)의 시간 복잡도를 갖는 일관된 성능으로 알려졌으며, 알고리즘이 매우 효율적이며 예측 가능하다. 병합 정렬 작동 방식 나누기: 배열은 각 하위 배열에 단일 요소만 존재하거나 요소가...

quick-sort

정렬 알고리즘 - 퀵 정렬

퀵 정렬 퀵 정렬은 매우 효율적인 정렬 알고리즘이며 분할 방식을 기반으로 동작한다. 목록이나 배열을 정렬하는 기능이 있으며 많은 표준 프로그래밍 라이브러리에서 널리 사용되는 가장 널리 사용되는 알고리즘 중 하나이다. 퀵 정렬의 기본 원리는 배열에서 ‘피벗’ 요소를 선택하고 다른 요소가 피벗보다 작거나 큰지에 따라 두 개의 하위 배열로 분할하는 것이...

© zwoong. Some rights reserved.