DAG topologikus rendezése Gubicza József (GUJQAAI.ELTE)
Jellemzők Cél: Adott DAG (körmentes) gráf topologikus rendezése. Az algoritmushoz a mélységi bejárást és egy vermet is fogunk használni. További információk, tömbök: - szín[1..n] a csúcsokhoz tartozó színeket jelöli - π (parent) a csúcsokhoz tartozó szülők meghat. - be[1..n] az egyes csúcsok belépési számai - ki[1..n] az egyes csúcsok kilépési számai A beszám és kiszám változókban számoljuk a ki –és belépési számokat. Ahonnan kiléptünk, azt az előbb említett verembe berakjuk. Ennek a veremnek a kiürítésével kapjuk majd a rendezést.
Topologikus rendezés (példa) F H A Z B A topologikus rendezésre érdemes úgy tekinteni mint egy folyamatábrára (pl. egy gyártósoron, a lépések egymásutánja). Pl. az alábbi példán a B lépés után jöhet az F és az A is, de A előtt mindenképp kell F is (=> B, F, A). Z-nek és F-nek meg kell előznie H-t, de F-et már tudjuk hol van. Így a helyes rendezés itt az B , F , A , Z , H sorrend.
2 6 4 1 7 3 5 Beszám: 0 Kiszám: 0 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: üres 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 1 Kiszám: 0 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: üres 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 2 Kiszám: 0 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: üres 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 3 Kiszám: 0 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: üres 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 4 Kiszám: 0 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: üres 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 4 Kiszám: 1 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: 7 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 5 Kiszám: 1 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: 7 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 5 Kiszám: 2 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: 7, 5 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 5 Kiszám: 3 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: 7, 5, 6 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 6 Kiszám: 3 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: 7, 5, 6 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 6 Kiszám: 4 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: 7, 5, 6, 4 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 7 Kiszám: 4 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: 7, 5, 6, 4 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 7 Kiszám: 5 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: 7, 5, 6, 4, 3 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 7 Kiszám: 6 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: 7, 5, 6, 4, 3, 2 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 7 Kiszám: 7 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: 7, 5, 6, 4, 3, 2, 1 1 2 3 4 5 6 7 Szín π ∕ Be Ki
2 6 4 1 7 3 5 Beszám: 7 Kiszám: 7 1 2 3 4 5 6 7 Szín π ∕ Be Ki Verem: 7, 5, 6, 4, 3, 2, 1, a topologikus rendezés meghat. a verem kiürítésével: 1 , 2 , 3 , 4 , 6 , 5 , 7 1 2 3 4 5 6 7 Szín π ∕ Be Ki