Anonymous user
Topological sort/Extracted top item: Difference between revisions
m
→{{header|Java}}: added comment, changed adjacency to boolean
m (→{{header|Java}}: added comment, changed adjacency to boolean) |
|||
Line 402:
class Graph {
List<String> vertices;
int numVertices;
Line 408:
vertices = asList(s.split(","));
numVertices = vertices.size();
adjacency = new
for (int[] edge : edges)
adjacency[edge[0]][edge[1]] =
}
List<String> toplevels() {
List<String> result = new ArrayList<>();
// look for empty columns
outer:
for (int c = 0; c < numVertices; c++) {
for (int r = 0; r < numVertices; r++) {
if (adjacency[r][c]
continue outer;
}
Line 434 ⟶ 435:
while (!queue.isEmpty()) {
for (int c = 0; c < numVertices; c++) {
if (adjacency[r][c]
queue.add(c);
}
|