Computer >> 컴퓨터 >  >> 프로그램 작성 >> 프로그램 작성

BFS와 DFS의 차이점

<시간/>

BFS와 DFS는 그래프 순회 알고리즘입니다.

BFS

BFS(Breadth First Search) 알고리즘은 그래프를 폭넓게 탐색하고 대기열을 사용하여 반복에서 막다른 골목이 발생할 때 다음 정점이 검색을 시작하도록 하는 것을 기억합니다.

BFS와 DFS의 차이점

DFS

DFS(Depth First Search) 알고리즘은 그래프를 깊이 방향으로 이동하고 스택을 사용하여 반복에서 막다른 골목이 발생할 때 다음 정점이 검색을 시작하도록 하는 것을 기억합니다.

BFS와 DFS의 차이점

다음은 BFS와 DFS의 중요한 차이점입니다.

Sr. 아니요. BFS DFS
1 정의 BFS는 Breadth First Search의 약자입니다. DFS는 Depth First Search의 약자입니다.
2 데이터 구조 BFS는 큐를 사용하여 최단 경로를 찾습니다. DFS는 스택을 사용하여 최단 경로를 찾습니다.
3 출처 BFS는 대상이 소스에 가까울 때 더 좋습니다. DFS는 대상이 소스에서 멀리 있을 때 더 좋습니다.
4 의사결정 트리에 대한 적합성 BFS는 모든 이웃을 고려하므로 퍼즐 게임에서 사용되는 의사결정 트리에는 적합하지 않습니다. DFS는 의사 결정 트리에 더 적합합니다. 하나의 결정과 마찬가지로 결정을 보완하기 위해 더 탐색해야 합니다. 결론에 도달하면 승리합니다.
5 속도 BFS는 DFS보다 느립니다. DFS는 BFS보다 빠릅니다.
6 시간 복잡성 BFS의 시간 복잡도 =O(V+E) 여기서 V는 정점이고 E는 가장자리입니다. DFS의 시간 복잡도도 O(V+E)이며 여기서 V는 정점이고 E는 가장자리입니다.