1function prim(n, edges, start) {
2 const key = Array(n).fill(Infinity);
3 const inMST = Array(n).fill(false);
4 key[start] = 0;
5 for (let c = 0; c < n; c++) {
6 const u = minKey(key, inMST);
7 inMST[u] = true;
8 for (v of adj[u]) relax(u, v);
9 }
10}