본문으로 바로가기

백준 1260 DFS와 BFS

category Algorithm 2020. 3. 12. 23:53
void bfs(int start) {
	queue<int> q;
	q.push(start);
	visit[start] = true;

	while (!q.empty()) {
		int x = q.front();
		q.pop();
		printf("%d ", x);
		for (int i = 1; i <= n; i++) {
			if (!visit[i]&&a[x][i]) {
				q.push(i);
				visit[i] = true;
			}
		}
	}

}

void dfs(int idx) {

	visited[v] = true;
	printf("%d ", idx);

	for (int i = 1; i <= n; i++) {
		if (a[idx][i] && !visited[i]) {
			visited[i] = true;
			dfs(i);
		}
	}

}

DFS와 BFS에 대해서 공부중이다.

기본적인 구조는 이해했지만, 앞으로 관련 문제 풀이를 보면서 알고리즘 사용방법을 체득해야될것 같다.

'Algorithm' 카테고리의 다른 글

백준 9095번 1 2 3 더하기  (0) 2020.03.04
백준 9465 스티커  (0) 2020.03.04
백준 6588번 골드바흐의 추측  (0) 2020.03.02
백준 2579 계단오르기  (0) 2020.03.02
백준 2920 음계  (0) 2020.03.01