69.이진트리 넓이 우선 탐색

강지훈·2021년 12월 12일
0

입력예제 1
1 2
1 3
2 4
2 5
3 6
3 7
▣ 출력예제 1
1 2 3 4 5 6 7

#include
#include
using namespace std;

int Q[100],front=-1,back=-1,ch[10];
vector map[10]; //인접리스트하기위해서
int main() {
int i,a,b,x;

for(i=1;i<=6;i++){
	cin>>a>>b;
	map[a].push_back(b);
	map[b].push_back(a); //무방향이기때문에 서로서로 연결 
} 

Q[++back]=1;
ch[1]=1; //1부터 시작하기 체크 
while(front<back){
	x=Q[++front];
	cout<<x;
	for(i=0;i<map[x].size();i++){
		if(ch[map[x][i]]==0) {
			ch[map[x][i]]=1;
			Q[++back]=map[x][i];
		}
	}
}


return 0;

}

//넓이 우선탐색: ? root노드에서 출발해서 level 순으로 탐색하는방법

profile
never stop

0개의 댓글