강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

toran8754님의 프로필 이미지
toran8754

작성한 질문수

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

bfs dfs 질문입니다

작성

·

301

0

bfs dfs 부분에 관한 내용을 공부하고 문제도 푸는중인데요

bfs의 원리와 queue를 이용해 그때그때 bfs의 원리를 만들어가는 과정도 알겠고

dfs의 원리와 재귀함수 그리고 일반스택이 아닌 스택프레임원리가 사용되어서 dfs의 형식을만들어 내는 것도 알겠습니다

그런데 관련문제를 보면 왜 bfs와 dfs들을 써야하는지 머릿속에 연관이 되지 않습니다.

그냥 따로 경우의수를 만들어내는 기능을 구현하는게 낫지 않나 하는 생각도 들고

어떻게 그러한 문제에서 dfs와 bfs를 써야하는지에 대한 논리적 공통성을 잘 모르겠습니다

유독 dfs와 bfs만 이러는데요 구글링을 해보면 bfs dfs관련 지식만 더늘지 문제를 풀때 연관지어서 떠오르지가 않네요

dfs,bfs를 어떻게 받아들여야만 할까요ㅜㅜ

 

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

큰 틀에서는 경우의 수를 살펴야 하는 문제는 DFS이고, 최단거리, 최소횟수 등의 문제를 풀때는 BFS라 생각하면 좋겠습니다.

대부분의 사람들은 결국에는 문제를 많이 접하고 풀어보면서 경험적으로 터특한다고 보시면 됩니다. 

toran8754님의 프로필 이미지
toran8754
질문자

ㅠㅠ 이것저것 풀어보고 다른책도 사서 읽어보았는데 무슨 말씀인지 이제 실감이 됩니다 

감사합니다 ㅠㅠ

toran8754님의 프로필 이미지
toran8754

작성한 질문수

질문하기