작성한 질문수
[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part2: 자료구조와 알고리즘
DFS (깊이 우선 탐색)
작성
·
208
0
DFS를 3으로 호출했을때
3 0 1 2 까지 출력이 되고 2에서는 모든길이 막혀
for의 next가 5가 초과돼 종료가 됩니다. 근데 그 후에 뜬금없이 for문 안에 있는 DFS(next)가 실행이 되는데 이 부분이 이해가 가질않습니다.
답변 2
2
첫번째 for문을 돌 때 이미 인접한 0, 1, 4를 체크하게끔 되어 있기 때문입니다.인셉션 영화처럼 타고 타고 타고 몇 중으로 들어가는데맨 처음 for문의 코드가 뒤늦게 실행되는 것입니다.DFS 함수 내에서 DFS를 호출하기 때문인데,재귀 함수를 처음 써보신다면 더 연구를 해보시고 다시 코드를 살펴보시기 바랍니다. (매우 중요한 부분입니다!)
재귀함수가 호출되어도 FOR문은 아직 끝난게 아닙니다.