데이터 분석 기술 블로그

BFS 본문

알고리즘

BFS

데이터분석가 이채은 2024. 7. 8. 09:00

1. BFS(Breadth First Search)

  • 너비우선탐색은 탐색 시작점의 인접한 정점들을 먼저 모두 차례로 방문한 후에, 방문했던 정점을 시작점으로 하여 다시 인접한 정점들을 차례로 방문하는 방식입니다.
  • 인접한 정점들에 대해 탐색을 한 후, 차례로 다시 너비우선탐색을 진행해야 하므로, 선입선출 형태의 자료구조인 큐를 활용합니다.

2. 큐

  • 큐(Queue)의 특성
    • 스택과 마찬가지로 삽입과 삭제의 위치가 제한적인 자료구조
    • 큐의 뒤에서는 삽입만 하고, 큐의 앞에서는 삭제만 이루어지는 구조
  • 큐에 삽입한 순서대로 원소가 저장되어, 가장 먼저 삽입된 원소는 가장 먼저 삭제됩니다.
    • 선입선출구조(FIFO : First In First Out)

3. 큐의 구조 및 기본 연산




4. 큐의 구현


5. BFS(Breadth First Search)


6. 연습 문제

'알고리즘' 카테고리의 다른 글

최소 비용 신장 트리(MST)  (0) 2024.07.10
서로소 집합  (0) 2024.07.09
DFS  (0) 2024.07.07
그래프  (0) 2024.07.06
  (0) 2024.07.05