Arian Soleimanzadeh
  • 홈
  • 블로그
  • 팟캐스트
  • 비디오
  • 라이브러리
  • 문의
العربيةArabic
DeutschGerman
EnglishEnglish
فارسیPersian
한국어Korean
中文Chinese
패널•빠른 문의

Languages

Choose your interface locale

ar

العربية

Arabic

de

Deutsch

German

en

English

English

fa

فارسی

Persian

ko

한국어

Korean

zh

中文

Chinese

상담 예약

짧은 메시지를 남겨주세요 — 가능한 한 빠르게 답변드리겠습니다.

LinkedIn빠른 응답
홈/아티클/Breadth-First Search(BFS): 레벨 단위 그래프 탐색
AlgorithmsGraph Algorithms아티클

Breadth-First Search(BFS): 레벨 단위 그래프 탐색

BFS의 Queue, visited, 무가중 최단 경로, Grid, Multi-Source BFS, Bidirectional BFS와 복잡도를 설명합니다.

2026년 8월 21일9 분 읽기22 조회수
#Graph#Algorithms#BFS#Queue#Shortest Path#JavaScript#TypeScript

Arian Soleimanzadeh

Software Engineer & Researcher

Breadth-First Search BFS 시각 가이드

Arian Soleimanzadeh

AI · 코드 · 제품

연구 + 엔지니어링
이 페이지에서
JavaScript무가중 최단 경로BFS와 DFSGrid와 MazeMulti-Source BFSBidirectional BFS0-1 BFS활용복잡도정리

BFS는 시작점과 가까운 정점부터 순서대로 탐색하는 알고리즘입니다.

Code
1234
Level 0
Level 1
Level 2
...

FIFO 방식의 Queue를 사용합니다.

JavaScript

JavaScript
1234567891011121314151617181920
function bfs(graph, start) {
  const queue = [start];
  let head = 0;
  const visited = new Set([start]);
  const order = [];

  while (head < queue.length) {
    const current = queue[head++];

    order.push(current);

    for (const next of graph[current] ?? []) {
      if (visited.has(next)) continue;
      visited.add(next);
      queue.push(next);
    }
  }

  return order;
}

정점은 Queue에 넣는 순간 visited 처리하는 것이 좋습니다.

무가중 최단 경로

BFS는 간선 개수가 적은 정점부터 방문하므로 최초 발견 거리가 최소 간선 거리입니다.

parent를 저장하면 실제 경로도 복원할 수 있습니다.

BFS와 DFS

BFS는 Queue와 레벨 탐색을 사용합니다. DFS는 Stack 또는 recursion으로 깊게 탐색합니다.

Grid와 Maze

각 Cell을 Vertex, 이동을 Edge로 모델링하면 동일 비용 이동에서 최소 이동 횟수를 찾을 수 있습니다.

Multi-Source BFS

여러 Source를 distance 0으로 동시에 Queue에 넣습니다.

Bidirectional BFS

Start와 Target이 모두 알려진 경우 양쪽에서 탐색해 상태 공간을 줄일 수 있습니다.

0-1 BFS

Weight가 0 또는 1뿐이라면 Deque 기반 0-1 BFS를 사용할 수 있습니다.

활용

  • Social Network
  • Maze/Grid
  • Web Crawling
  • Connected Components
  • Bipartite Check
  • Minimum Moves

복잡도

Code
12
시간: O(V + E)
공간: O(V)

정리

무가중 그래프의 최단 거리, 가장 가까운 상태, 최소 이동 횟수, Level Order가 필요하면 BFS를 우선 고려할 수 있습니다.

이 페이지에서
JavaScript무가중 최단 경로BFS와 DFSGrid와 MazeMulti-Source BFSBidirectional BFS0-1 BFS활용복잡도정리

아티클 정보

게시 정보, 읽기 시간 및 조회 데이터입니다.

게시일

2026년 8월 21일

업데이트

2026년 11월 6일

읽기 시간

9 분 읽기

조회수

22

작성자

Arian Soleimanzadeh

이전 아티클

Cuckoo Hashing 알고리즘이란 무엇이며 어떻게 동작할까?

다음 아티클

Depth-First Search(DFS): 깊이 우선 탐색의 기초부터 실전까지

Arian Soleimanzadeh

현대적인 웹 엔지니어링, UI 시스템, 실용적인 AI 제품에 집중한 개인 포트폴리오 — 깨끗한 코드, 명확한 디자인.

빠른 링크

  • 소개
  • 블로그
  • 라이브러리
  • 문의

문의

  • soleimanzadeh.a.work@gmail.com
  • soleimanzadeh.uni@gmail.com

가능 시간: 평일

보통 다음 시간 내에 답변합니다 24시간.

뉴스레터

글, 프로젝트, 새 릴리스에 대한 업데이트를 받아보세요.

© 2026 ariansoleimanzadeh.dev — 모든 권리 보유.

LinkedIn