Open dlehdanakf opened 3 years ago
Set
객체를 사용한다.function solution(n, edge) {
const nodes = new Array(n + 1).fill(n + 1);
const map = new Array(n + 1).fill(null).map(_ => []);
nodes[0] = nodes[1] = 0;
edge.forEach(([a,b]) => { map[a].push(b), map[b].push(a) });
let arr = new Set([1]), weight = 1, answer = 0;
while(true) {
arr = new Set([...arr].map(e => map[e]).flat().filter(e => weight < nodes[e]));
if(arr.size === 0) {
return answer;
}
arr.forEach(e => nodes[e] = weight);
answer = arr.size;
weight += 1;
}
}
개요
예제
배달
다익스트라 알고리즘