깊이우선탐색의구현

Esther·2023년 5월 20일
0

즐거운ㅋ코딩공부

목록 보기
5/8
#include <cstdio>
#include <vector>

using namespace std;

const int MAX = 100;

vector <int> myGraph[MAX];
int n,m;
bool visited[MAX];

void DFS(int x){
	visited[x]=true;
    printf("%d ",x); //방문한 순서대로 출력
    
    for(int i=0;i<myGraph[x].size();i++){
    	int y = myGraph[x][i];
        if(visited[y] == false){
        DFS(y);
        }
    }
    
}

int main(){
	scanf("%d %d",&n,&m);
    
    for(int i=0; i<m; i++){
    	int a,b;
        scanf("%d %d", &a, &b);
        
        myGraph[a].push_back(b);
        myGraph[b].push_back(a);
    }
    DFS(1); // 1부터 시작해서 dfs한 결과를 출력
    printf("\n");
    
    
    return 0;
    
    
 }




    




0개의 댓글