너비 우선 탐색 Breadth First Search (BFS)
시작점에서 가까운 정점부터 순서대로 방문 Queue O(|V|+|E|) 최단 경로 문제 해결 가중치가 없는 그래프 //V : 정점 집합, E : 간선 집합, Q : 큐 //visit[v] : 방분정보 저장 //Adj[v] : 정점 v의 인점 정접들 집합 //D[] : 시작점부터 각 정점까지 거리 //P[] : 최단 경로 트리 저장 bfs(s) { for (v : V) { D[v] = Max; P[v] = null; } D[s] = 0; P[s] = s; visit[s] = true; Q.offer(s); while(!Q.isEmpty()) { v = Q.poll(); for (인접 정점 u : Adj[v]) { if (visit[u] == false) { D[u] = D[v] + 1; P[u] = v; ..
Algorithm
2020. 4. 5. 19:14
반응형
300x250