인접행렬에서는 graph를 만들어 0부터 모든숫자를 순회하며 1이 있나 살펴 았다.
graph
graph = [ [], [ 2, 3, 4 ], [ 1, 3, 5 ], [ 4 ], [ 2, 5 ], [] ]
1에 접하는 수는 2,3,4
2에 접하는 수는 1,3,5
...
function solution(n, arr){
let gh = Array.from(Array(n+1), () => Array());
let ch = Array.from({length:n+1}, ()=>0);
let answer = 0;
for(let [a, b] of arr) gh[a].push(b);
function DFS(v){
if(v===n){
answer++;
console.log(tmp);
}
else{
for(let i=0; i<gh[v].length; i++) {
if(ch[gh[v][i]]===0){
ch[gh[v][i]]=1; // dfs에 들어가기전에 v에 해당되는 숫자는 ch에 1로 바꿔준다.
DFS(gh[v][i]);
ch[gh[v][i]]=0; // dfs가 끝나면 다시 접근할 수 있게 0으로 바꿔준다.
}
}
}
}
ch[1]=1;
DFS(1);
return answer;
}