인프런 커뮤니티 질문&답변
DFS 종화문제 dfs함수 질문입니다.
작성
·
259
답변 1
0
큰돌
지식공유자
안녕하세요 717님ㅎㅎ
종화님 문제의 void dfs() 함수가 이전에 배운 방향탐색에서 배운 go() 함수와 같은 것 같은데 그럼 go()함수도 dfs 인건가요?
>> void라고 해서 무조건 dfs가 아닙니다. dfs처럼 재귀적으로 끝까지 깊이있게 탐색해야 dfs라고 볼 수 있습니다. 그리고 다음의 코드는 dfs라고 볼 수 있습니다.
void dfs(int y, int x){
    visited[y][x] = 1;
    for(int i = 0; i < 4; i++){
        ny = y + dy[i];
        nx = x + dx[i];
        if(ny < 0 || nx < 0 || ny >=n || nx >= m) continue;
        if(a[ny][nx] == 1 && !visited[ny][nx]){
            dfs(ny, nx);
        }
    }
    return;
}
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.






