|
1 | | -function DFSExplore (graph, source) { |
2 | | - var stack = [ [source, null] ], visited = {}; |
3 | | - var node, prev, i, temp; |
| 1 | +function DFSExplore(graph, source) { |
| 2 | + var stack = [[source, null]], visited = {}; |
| 3 | + var node, prev, i, temp; |
4 | 4 |
|
5 | | - while (stack.length > 0) { |
6 | | - temp = stack.pop (); |
7 | | - node = temp [0]; |
8 | | - prev = temp [1]; |
| 5 | + while (stack.length > 0) { |
| 6 | + temp = stack.pop(); |
| 7 | + node = temp [0]; |
| 8 | + prev = temp [1]; |
9 | 9 |
|
10 | | - if (!visited [node]) { |
11 | | - visited [node] = true; |
12 | | - logger._print (node); |
| 10 | + if (!visited [node]) { |
| 11 | + visited [node] = true; |
13 | 12 |
|
14 | | - if (prev !== undefined && graph [node] [prev]) { tracer._visit (node, prev)._wait (); console.log ('tracer ' + prev + ', ' + node); } |
15 | | - else { tracer._visit (node)._wait (); console.log ('tracer ' + node); } |
| 13 | + if (prev !== undefined && graph [node] [prev]) { |
| 14 | + tracer._visit(node, prev)._wait(); |
| 15 | + } else { |
| 16 | + tracer._visit(node)._wait(); |
| 17 | + } |
16 | 18 |
|
17 | | - for (i = 0; i < graph.length; i++) { |
18 | | - if (graph [node] [i]) { |
19 | | - stack.push ([i, node]); |
20 | | - } |
21 | | - } |
22 | | - } |
23 | | - } |
| 19 | + for (i = 0; i < graph.length; i++) { |
| 20 | + if (graph [node] [i]) { |
| 21 | + stack.push([i, node]); |
| 22 | + } |
| 23 | + } |
| 24 | + } |
| 25 | + } |
24 | 26 |
|
25 | | - return visited; |
| 27 | + return visited; |
26 | 28 | } |
27 | 29 |
|
28 | | - |
29 | | -var visited = DFSExplore (G, 0); |
30 | | -if (G.length === Object.keys (visited).length) { |
31 | | - logger._print ('The Graph is CONNECTED'); |
| 30 | +var visited = DFSExplore(G, 0); |
| 31 | +if (G.length === Object.keys(visited).length) { |
| 32 | + logger._print('The Graph is CONNECTED'); |
32 | 33 | } |
33 | 34 | else { |
34 | | - logger._print ('The Graph is NOT CONNECTED'); |
| 35 | + logger._print('The Graph is NOT CONNECTED'); |
35 | 36 | } |
0 commit comments