notes67

notes67 - Topological Sort It is a sorting of the vertices...

Info iconThis preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon
Topological Sort It is a sorting of the vertices such that if there is an edge (i,j) then i should appear in the sorting before j. An example Topological sort for the Graph above would be (A,B,C,D,E,F) or (A,C,B,D,E,F). (C,E,A,B,D,F) would not be a topological sort because there is an edge where A goes to C but C appears before A in the sorting. A topological sort is useful for scheduling of events that depend on each other. A topological sort would be a possible schedule of the execution, for example when building a house.
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Topological Sort (Foundation, Grass, Walls, Electric, Piping, Windows, End) Algorithm: Topological Sorting Input: A diagraph G with n vertices Output: An array “sorted” with the vertices in topological order. // We use a stack tom store the vertices with no dependencies Stack = {}
Background image of page 2
// Computed indegree of vertices. for each edge(u,w) v -> w indegree[w]++ // Put vertices without incident edges (no dependencies) in stack for all v in G do if indegree(v) == 0 push v in stack end end i = 0; // index of sorted while Stack is not empty u <- Stack.pop() // u has no dependencies // add to “sorted” Sorted[i] = u; i++; for all outgoing edges u->w (u,w) of u do //remove dependency of u on w indegree[w]--; if(indegree[w] == 0) push w into stack end end
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 4
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 02/02/2012 for the course CS 251 taught by Professor Staff during the Fall '08 term at Purdue.

Page1 / 10

notes67 - Topological Sort It is a sorting of the vertices...

This preview shows document pages 1 - 4. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online