Download presentation
Presentation is loading. Please wait.
1
Breadth first search animation
and 6.855J Breadth First Search Get ahold of a network, and use the same network to illustrate the shortest path problem for communication newtorks, the max flow problem, the minimum cost flow problem, and the multicommodity flow problem. This will be a very efficient way of introducing the four problems. (Perhaps under 10 minutes of class time.) Breadth first search animation
2
Breadth first search animation
Initialize 1 2 4 5 3 6 9 7 8 1 2 4 5 3 6 9 7 8 1 1 pred(1) = 0 next := 1 order(next) = 1 LIST:= {1} Unmark all nodes in N; Mark node s LIST 1 next 1 Breadth first search animation
3
Breadth first search animation
Select a node i in LIST 1 2 4 5 3 6 9 7 8 1 1 1 In breadth first search, i is the first node in LIST LIST 1 next 1 Breadth first search animation
4
If node i is incident to an admissible arc…
2 4 2 2 8 1 1 1 1 5 7 Mark Node j pred(j) := i Select an admissible arc (i,j) Next := Next + 1 order(j) := next add j to LIST 9 3 6 LIST 1 2 1 2 next Breadth first search animation
5
If node i is incident to an admissible arc…
2 4 2 2 8 1 1 1 1 5 5 7 3 Mark Node j pred(j) := i Next := Next + 1 order(j) := next add j to LIST Select an admissible arc (i,j) 9 3 6 LIST 1 2 5 2 3 next Breadth first search animation
6
If node i is incident to an admissible arc…
2 4 2 2 8 1 1 1 1 5 5 7 3 Select an admissible arc (i,j) Mark Node j pred(j) := i Next := Next + 1 order(j) := next add j to LIST 9 3 3 6 4 LIST 1 2 5 3 3 4 2 next Breadth first search animation
7
If node i is not incident to an admissible arc…
2 4 2 2 8 1 1 1 1 1 5 5 7 3 9 Delete node i from LIST 3 3 6 4 LIST 1 2 5 3 4 3 2 next Breadth first search animation
8
Breadth first search animation
Select Node i 2 4 2 2 2 8 1 1 1 1 1 5 5 7 3 9 The first node on LIST becomes node i 3 3 6 4 LIST 1 2 5 3 4 2 3 next Breadth first search animation
9
If node i is incident to an admissible arc…
5 2 4 4 2 2 2 8 1 1 1 5 5 7 3 Mark Node j pred(j) := i Select an admissible arc (i,j) Next := Next + 1 order(j) := next add j to LIST 9 3 3 6 4 LIST 1 2 5 3 4 5 3 4 2 next Breadth first search animation
10
If node i is not incident to an admissible arc…
5 2 4 4 2 2 2 2 8 1 1 1 5 5 7 3 Delete node i from LIST 9 3 3 6 4 LIST 1 2 5 3 4 5 2 3 4 next Breadth first search animation
11
Breadth first search animation
Select a node 5 2 4 4 2 2 2 8 1 1 1 5 5 5 7 3 The first node on LIST becomes node i 9 3 3 6 4 LIST 1 2 5 3 4 5 2 3 4 next Breadth first search animation
12
If node i is incident to an admissible arc…
5 2 4 4 2 2 2 8 1 1 1 5 5 5 7 3 Mark Node j pred(j) := i Select an admissible arc (i,j) Next := Next + 1 order(j) := next add j to LIST 9 3 3 6 6 4 6 LIST 1 2 5 3 4 6 6 3 2 5 4 next Breadth first search animation
13
If node i is not incident to an admissible arc…
5 2 4 4 2 2 2 8 1 1 1 5 5 5 5 7 3 Delete node i from LIST 9 3 3 6 6 4 6 LIST 1 2 5 3 4 6 6 2 5 3 4 next Breadth first search animation
14
Breadth first search animation
Select node 3 5 2 4 4 2 2 2 8 1 1 1 5 5 5 5 7 3 node 3 is not incident to any admissible arcs delete node 3 from LIST 9 3 3 3 3 6 6 4 6 LIST 1 2 5 3 4 6 4 2 3 6 5 next Breadth first search animation
15
Breadth first search animation
Select a node 5 2 4 4 4 2 2 8 1 1 1 5 5 7 3 i : = 4 9 3 3 6 6 4 6 LIST 1 2 5 3 4 6 2 6 3 4 5 next Breadth first search animation
16
If node i is incident to an admissible arc…
5 2 4 4 4 7 2 2 8 8 1 1 1 5 5 7 3 Mark Node j pred(j) := i Select an admissible arc (i,j) Next := Next + 1 order(j) := next add j to LIST 9 3 3 6 6 4 6 LIST 1 2 5 3 4 6 8 7 3 2 6 4 5 next Breadth first search animation
17
If node i is not incident to an admissible arc…
5 2 4 4 4 4 7 2 2 8 8 1 1 1 5 5 7 3 Delete node i from LIST 9 3 3 6 6 4 6 LIST 1 2 5 3 4 6 8 7 3 2 6 4 5 next Breadth first search animation
18
Breadth first search animation
Select node i 5 2 4 4 7 2 2 8 8 1 1 1 5 5 7 3 i := 6 9 3 3 6 6 6 4 6 LIST 1 2 5 3 4 6 8 7 2 3 6 4 5 next Breadth first search animation
19
If node i is incident to an admissible arc…
5 2 4 4 7 2 2 8 8 1 8 1 1 5 5 7 7 3 Select an admissible arc (i,j) Next := Next + 1 order(j) := next add j to LIST Mark Node j pred(j) := i 9 3 3 6 6 6 4 6 LIST 1 2 5 3 4 6 8 7 5 4 3 6 2 7 8 next Breadth first search animation
20
If node i is incident to an admissible arc…
5 2 4 4 7 2 2 8 8 1 8 1 1 5 5 7 7 3 Mark Node j pred(j) := i Select an admissible arc (i,j) Next := Next + 1 order(j) := next add j to LIST 9 9 3 3 6 6 6 4 9 6 LIST 1 2 5 3 4 6 8 7 9 5 9 8 2 4 6 3 7 next Breadth first search animation
21
If node i is not incident to an admissible arc…
5 2 4 4 7 2 2 8 8 1 8 1 1 5 5 7 7 3 Delete node i from LIST 9 9 3 3 6 6 6 6 4 9 6 LIST 1 2 5 3 4 6 8 7 9 2 9 8 4 6 3 5 7 next Breadth first search animation
22
Breadth first search animation
Select node 8 5 2 4 4 7 2 2 8 8 8 8 1 8 1 1 5 5 7 7 3 node 8 is not incident to an admissible arc; delete it from LIST 9 9 3 3 6 6 6 6 4 9 6 LIST 1 2 5 3 4 6 8 7 9 9 3 2 8 7 4 6 5 next Breadth first search animation
23
Breadth first search animation
Select node 7 5 2 4 4 7 2 2 8 8 1 8 1 1 5 5 7 7 7 7 3 node 7 is not incident to an admissible arc; delete it from LIST 9 9 3 3 6 6 6 6 4 9 6 LIST 1 2 5 3 4 6 8 7 9 9 3 2 8 7 4 6 5 next Breadth first search animation
24
Breadth first search animation
Select node 9 5 2 4 4 7 2 2 8 8 1 8 1 1 5 5 7 7 3 node 9 is not incident to an admissible arc; delete it from LIST 9 9 9 9 3 3 6 6 6 6 4 9 6 LIST 1 2 5 3 4 6 8 7 9 9 3 2 8 7 4 6 5 next Breadth first search animation
25
Breadth first search animation
THE END Breadth first search animation
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.