Fall 2006EE VLSI Design Automation I 1 Depth-First Search Algorithm acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· dfs(“a”).... dfs(“a”).... a dfs ( a ) a.marked 1 print a for each (a, u) E if (u.mark != 1) dfs (u)
Fall 2006EE VLSI Design Automation I 2 Depth-First Search Algorithm dfs ( a ) a.marked 1 print a for each (a, u) E if (b.mark != 1) dfs (b) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· dfs(“a”).... dfs(“a”).... a dfs(“b”).... dfs(“b”).... u=b
Fall 2006EE VLSI Design Automation I 3 Depth-First Search Algorithm dfs ( b ) b.marked 1 print b for each (b, u) E if (u.mark != 1) dfs (u) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b dfs(“a”).... dfs(“a”).... dfs(“b”).... dfs(“b”)....
Fall 2006EE VLSI Design Automation I 4 Depth-First Search Algorithm dfs ( b ) b.marked 1 print b for each (b, u) E if (a.mark != 1) dfs (a) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b dfs(“a”).... dfs(“a”).... dfs(“b”).... dfs(“b”).... u=a
Fall 2006EE VLSI Design Automation I 5 Depth-First Search Algorithm dfs ( b ) b.marked 1 print b for each (b, u) E if (d.mark != 1) dfs (d) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b dfs(“a”).... dfs(“a”).... dfs(“b”).... dfs(“b”).... dfs(“d”).... dfs(“d”).... u=d
Fall 2006EE VLSI Design Automation I 6 Depth-First Search Algorithm dfs ( d ) d.marked 1 print d for each (d, u) E if (u.mark != 1) dfs (u) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b d dfs(“a”).... dfs(“a”).... dfs(“b”).... dfs(“b”).... dfs(“d”).... dfs(“d”)....
Fall 2006EE VLSI Design Automation I 7 Depth-First Search Algorithm dfs ( d ) d.marked 1 print d for each (d, u) E if (e.mark != 1) dfs (e) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b d dfs(“a”).... dfs(“a”).... dfs(“b”).... dfs(“b”).... dfs(“d”).... dfs(“d”).... dfs(“e”).... dfs(“e”).... u=e
Fall 2006EE VLSI Design Automation I 8 Depth-First Search Algorithm dfs ( e ) e.marked 1 print e for each (e, u) E if (u.mark != 1) dfs (u) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b d e dfs(“a”).... dfs(“a”).... dfs(“b”).... dfs(“b”).... dfs(“d”).... dfs(“d”).... dfs(“e”).... dfs(“e”)....
Fall 2006EE VLSI Design Automation I 9 Depth-First Search Algorithm dfs ( e ) e.marked 1 print e for each (e, u) E if (d.mark != 1) dfs (u) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b d e dfs(“a”).... dfs(“a”).... dfs(“b”).... dfs(“b”).... dfs(“d”).... dfs(“d”).... dfs(“e”).... dfs(“e”).... u=d
Fall 2006EE VLSI Design Automation I 10 Depth-First Search Algorithm dfs ( e ) e.marked 1 print e for each (e, u) E if (u.mark != 1) dfs (u) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b d e dfs(“a”).... dfs(“a”).... dfs(“b”).... dfs(“b”).... dfs(“d”).... dfs(“d”).... dfs(“e”).... dfs(“e”)....
Fall 2006EE VLSI Design Automation I 11 Depth-First Search Algorithm dfs ( d ) d.marked 1 print d for each (d, u) E if (b.mark != 1) dfs (b) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b d e dfs(“a”).... dfs(“a”).... dfs(“b”).... dfs(“b”).... dfs(“d”).... dfs(“d”).... u=b,a
Fall 2006EE VLSI Design Automation I 12 Depth-First Search Algorithm dfs ( d ) d.marked 1 print d for each (d, u) E if (u.mark != 1) dfs (u) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b d e dfs(“a”).... dfs(“a”).... dfs(“b”).... dfs(“b”).... dfs(“d”).... dfs(“d”)....
Fall 2006EE VLSI Design Automation I 13 Depth-First Search Algorithm dfs ( b ) b.marked 1 print b for each (b, u) E if (u.mark != 1) dfs (u) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b d e dfs(“a”).... dfs(“a”).... dfs(“b”).... dfs(“b”)....
Fall 2006EE VLSI Design Automation I 14 Depth-First Search Algorithm dfs ( a ) a.marked 1 print a for each (a, u) E if (d.mark != 1) dfs (d) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b d e dfs(“a”).... dfs(“a”).... u=d
Fall 2006EE VLSI Design Automation I 15 Depth-First Search Algorithm dfs ( a ) a.marked 1 print a for each (a, u) E if (c.mark != 1) dfs (c) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b d e dfs(“a”).... dfs(“a”).... u=c dfs(“c”).... dfs(“c”)....
Fall 2006EE VLSI Design Automation I 16 Depth-First Search Algorithm dfs ( c ) c.marked 1 print c for each (c, u) E if (u.mark != 1) dfs (u) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b d e c dfs(“a”).... dfs(“a”).... dfs(“c”).... dfs(“c”)....
Fall 2006EE VLSI Design Automation I 17 Depth-First Search Algorithm dfs ( c ) c.marked 1 print c for each (c, u) E if (a.mark != 1) dfs (a) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b d e c dfs(“a”).... dfs(“a”).... dfs(“c”).... dfs(“c”).... u=a
Fall 2006EE VLSI Design Automation I 18 Depth-First Search Algorithm dfs ( c ) c.marked 1 print c for each (c, u) E if (u.mark != 1) dfs (u) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b d e c dfs(“a”).... dfs(“a”).... dfs(“c”).... dfs(“c”)....
Fall 2006EE VLSI Design Automation I 19 Depth-First Search Algorithm dfs ( a ) a.marked 1 print a for each (a, u) E if (u.mark != 1) dfs (u) acdeb b · c · d · e · a · b·d·c·a·d·a·e·b·b·a·d· a b d e c dfs(“a”).... dfs(“a”)....
Fall 2006EE VLSI Design Automation I 20 Dijkstra’s Algorithm - an example 0 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u Edges examined
Fall 2006EE VLSI Design Automation I 21 Dijkstra’s Algorithm - an example 0 13 16 8 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u updated, min picked
Fall 2006EE VLSI Design Automation I 22 Dijkstra’s Algorithm - an example 0 13 16 8 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u S Augmented
Fall 2006EE VLSI Design Automation I 23 Dijkstra’s Algorithm - an example 0 13 16 8 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u Edges examined
Fall 2006EE VLSI Design Automation I 24 Dijkstra’s Algorithm - an example 0 18 8 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u updated, min picked
Fall 2006EE VLSI Design Automation I 25 Dijkstra’s Algorithm - an example 0 18 8 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u S Augmented
Fall 2006EE VLSI Design Automation I 26 Dijkstra’s Algorithm - an example 0 18 8 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u Edges examined
Fall 2006EE VLSI Design Automation I 27 Dijkstra’s Algorithm - an example 0 18 8 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u updated, min picked
Fall 2006EE VLSI Design Automation I 28 Dijkstra’s Algorithm - an example 0 18 8 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u S augmented
Fall 2006EE VLSI Design Automation I 29 Dijkstra’s Algorithm - an example 0 18 8 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u Edges examined
Fall 2006EE VLSI Design Automation I 30 Dijkstra’s Algorithm - an example 0 18 8 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u updated, min picked
Fall 2006EE VLSI Design Automation I 31 Dijkstra’s Algorithm - an example 0 18 8 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u S augmented
Fall 2006EE VLSI Design Automation I 32 Dijkstra’s Algorithm - an example 0 18 8 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u Edges examined
Fall 2006EE VLSI Design Automation I 33 Dijkstra’s Algorithm - an example 0 18 8 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u updated, min picked
Fall 2006EE VLSI Design Automation I 34 Dijkstra’s Algorithm - an example 0 18 8 v1v1 v6v6 v2v2 v3v3 v4v4 v7v7 v5v5 u0u S augmented
Fall 2006EE VLSI Design Automation I 35 Prim’s Algorithm Example v1v1 v2v2 v3v3 v4v4 v5v5 S = {v 1 } Nodev 1 v 2 v 3 v 4 v -v 1 v 1 v
Fall 2006EE VLSI Design Automation I 36 Prim’s Algorithm Example v1v1 v2v2 v3v3 v4v4 v5v5 S = {v 1 } Nodev 1 v 2 v 3 v 4 v -v 1 v 1 v
Fall 2006EE VLSI Design Automation I 37 Prim’s Algorithm Example v1v1 v2v2 v3v3 v4v4 v5v5 S = {v 1, v 2 } Nodev 1 v 2 v 3 v 4 v -v 1 v 1 v
Fall 2006EE VLSI Design Automation I 38 Prim’s Algorithm Example v1v1 v2v2 v3v3 v4v4 v5v5 S = {v 1, v 2 } Nodev 1 v 2 v 3 v 4 v -v 1 v 2 v 2 v
Fall 2006EE VLSI Design Automation I 39 Prim’s Algorithm Example v1v1 v2v2 v3v3 v4v4 v5v5 S = {v 1, v 2 } Nodev 1 v 2 v 3 v 4 v -v 1 v 2 v 2 v
Fall 2006EE VLSI Design Automation I 40 Prim’s Algorithm Example v1v1 v2v2 v3v3 v4v4 v5v5 S = {v 1, v 2, v 3 } Nodev 1 v 2 v 3 v 4 v -v 1 v 2 v 2 v
Fall 2006EE VLSI Design Automation I 41 Prim’s Algorithm Example v1v1 v2v2 v3v3 v4v4 v5v5 S = {v 1, v 2, v 3 } Nodev 1 v 2 v 3 v 4 v -v 1 v 2 v 3 v
Fall 2006EE VLSI Design Automation I 42 Prim’s Algorithm Example v1v1 v2v2 v3v3 v4v4 v5v5 S = {v 1, v 2, v 3 } Nodev 1 v 2 v 3 v 4 v -v 1 v 2 v 3 v
Fall 2006EE VLSI Design Automation I 43 Prim’s Algorithm Example v1v1 v2v2 v3v3 v4v4 v5v5 S = {v 1, v 2, v 3, v 4 } Nodev 1 v 2 v 3 v 4 v -v 1 v 2 v 3 v
Fall 2006EE VLSI Design Automation I 44 Prim’s Algorithm Example v1v1 v2v2 v3v3 v4v4 v5v5 S = {v 1, v 2, v 3, v 4 } Nodev 1 v 2 v 3 v 4 v -v 1 v 2 v 3 v
Fall 2006EE VLSI Design Automation I 45 Prim’s Algorithm Example v1v1 v2v2 v3v3 v4v4 v5v5 S = {v 1, v 2, v 3, v 4, v 5 } Nodev 1 v 2 v 3 v 4 v -v 1 v 2 v 3 v