4.2 Topological Sort demo -...

32
Algorithms, 4 th Edition Robert Sedgewick and Kevin Wayne Copyright © 2002–2012 September 10, 2014 11:23:02 AM 4.2 Topological Sort demo click to begin demo

Transcript of 4.2 Topological Sort demo -...

  • Algorithms, 4th Edition ∙ Robert Sedgewick and Kevin Wayne ∙ Copyright © 2002–2012 ∙ September 10, 2014 11:23:02 AM

    4.2 Topological Sort demo

    click to begin demo

  • 2

    • Run depth-first search.• Return vertices in reverse postorder.

    0

    1

    4

    52

    6

    3

    Topological sort algorithm

    a directed acyclic graph

    0→5

    0→2

    0→1

    3→6

    3→5

    3→4

    5→4

    6→4

    6→0

    3→2

    1→4

    1

    4

    52

    6

    3

    0

  • 3

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    0

    1

    4

    52

    6

    3

    0

    4

    52

    6

    3

    visit 0

    postorder

  • 4

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    0

    1

    4

    52

    6

    3

    0

    1

    4

    52

    6

    3

    visit 1

    postorder

  • 5

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    0

    1

    4

    52

    6

    3

    0

    1

    4

    52

    6

    3

    visit 4

    postorder

  • 6

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4

    0

    1

    4

    52

    6

    3

    0

    152

    6

    3

    4 done

    4

    postorder

    1

  • 7

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4

    0

    1

    4

    52

    6

    3

    0

    152

    6

    3

    visit 1

    postorder

  • 8

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1

    0

    1

    4

    52

    6

    3

    0

    52

    6

    3

    1 done

    1

    postorder

    0

  • 9

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1

    0

    1

    4

    52

    6

    3

    0

    52

    6

    3

    visit 0

    postorder

  • 10

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1

    0

    1

    4

    52

    6

    3

    0

    52

    6

    3

    visit 2

    postorder

  • 11

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2

    0

    1

    4

    52

    6

    3

    0

    5

    6

    3

    2 done

    2

    postorder

    0

  • 12

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2

    0

    1

    4

    52

    6

    3

    0

    5

    6

    3

    visit 0

    postorder

  • 13

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2

    0

    1

    4

    52

    6

    3

    0

    5

    6

    3

    visit 5

    postorder

  • 14

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2

    0

    1

    4

    52

    6

    3

    0

    5

    6

    3

    visit 5

    postorder

  • 15

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5

    0

    1

    4

    52

    6

    3

    0

    6

    3

    5 done

    5

    postorder

    0

  • 16

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5

    0

    1

    4

    52

    6

    3

    0

    6

    3

    visit 0

    postorder

  • 17

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0

    0

    1

    4

    52

    6

    3

    6

    3

    0 done

    0

    postorder

  • 18

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0

    0

    1

    4

    52

    6

    3

    6

    3

    check 1

    postorder

  • 19

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0

    0

    1

    4

    52

    6

    3

    6

    3

    check 2

    postorder

  • 20

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0

    0

    1

    4

    52

    6

    3

    6

    3

    visit 3

    postorder

  • 21

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0

    0

    1

    4

    52

    6

    3

    6

    3

    visit 3

    postorder

  • 22

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0

    0

    1

    4

    52

    6

    3

    6

    3

    visit 3

    postorder

  • 23

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0

    0

    1

    4

    52

    6

    3

    6

    3

    visit 3

    postorder

  • 24

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0

    0

    1

    4

    52

    6

    3

    6

    3

    visit 6

    postorder

  • 25

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0

    0

    1

    4

    52

    6

    3

    6

    3

    visit 6

    postorder

  • 26

    • Run depth-first search.• Return vertices in reverse postorder.

    6

    Topological sort algorithm

    4 1 2 5 0 6

    0

    1

    4

    52

    33

    6 done

    postorder

    3

    6

  • 27

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0 6

    0

    1

    4

    52

    6

    33

    visit 3

    postorder

  • 28

    33

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0 6 3

    0

    1

    4

    52

    6

    3 done

    postorder

  • 29

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0 6 3

    0

    1

    4

    52

    6

    3

    check 4

    postorder

  • 30

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0 6 3

    0

    1

    4

    52

    6

    3

    check 5

    postorder

  • 31

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0 6 3

    0

    1

    4

    52

    6

    3

    check 6

    postorder

  • 32

    • Run depth-first search.• Return vertices in reverse postorder.

    Topological sort algorithm

    4 1 2 5 0 6 3

    postorder

    done

    0

    1

    4

    52

    6

    3

    0

    1

    4

    52

    6

    3

    3 6 0 5 2 1 4

    topological order