DFS BFS 판단 방법

SUBNY·2023년 8월 14일
0
post-thumbnail

우선 간단하게 기본 개념만 확인하고 넘어가보자
도움 될 만한 자세한 설명은 맨 아래에 다른 분의 링크가 있으니,
여기서는 진짜 문제 풀이하는데 딱 필요한 정도로만 확인합시다

DFS

깊이 우선 탐색

DFS

출처

  • 모든 노드를 방문한다.
  • 재귀적인 특징을 가진다.
  • stack을 사용한다고도 하던데 난 재귀함수 로만 했다

BFS

너비 우선 탐색

BFS

출처

  • 루트 노드(지정한 임의의 노드)에서 시작해서 가까운 노드를 먼저 탐색한다.
  • 시작에서 인접한 노드들부터 방문한다.
  • Queue 를 사용한다.




판단 방법

DFS

  1. 모든 노드를 확인해야 할 경우
  2. 경로의 특징을 저장해야할 경우 (서로 다른 가중치를 갖고 있다던가 제약이 있을 때)

BFS

  1. 최단 거리
  2. 임의의 경로 찾기 (미로탐색)



이 블로그 글을 보면서 이해가 너무 잘 됐다. 특히 BFS 그림 👍
https://foameraserblue.tistory.com/188#comment6726525

profile
대체할 수 없는 풀스택 개발자가 되고 싶어요

1개의 댓글

comment-user-thumbnail
2023년 8월 14일

많은 것을 배웠습니다, 감사합니다.

답글 달기