coding11   3년 전

DFS로 풀었습니다.

제가 궁금한 점은


(4,5) - 3 - (1,2) 이런 식으로 그래프가 그려지면 될 것 같다고 생각하구요.

인접리스트로 구현해서

(4,3) (5,3) (3,1) (3,2)

ArrayList aa[앞의 숫자] = 뒤의 숫자 요렇게 했습니다.

제가 짠 코드에서 해당 숫자를 방문하게 되면 visit[숫자] = 1 을 넣어서 방문한 걸 표시해주고,

더이상 방문 안하게 설정해놨습니다.

결과적으로, 1과 2는 해당 메소드를 호출할 수 없고

3부터 호출할텐데 이때 visit[3] = 1을 해줘서 방문한 거를 표시해줍니다.


그런데, 제가 이 코드를 디버깅 하다보니까..

visit[3] =1이었었는데

-> aa[4]에서 3을 호출했더니 

visit[3]이 0이어서 메소드를 재귀호출하더라구요.

아예 처음에 Main함수에서 for문이 돌때, i=3이면 3을 방문한걸로 쳤는데

갑자기 visit[3]이 왜 0이 되는지 아시는 분 계시면 답변부탁드립니다

댓글을 작성하려면 로그인해야 합니다.