Professional Documents
Culture Documents
Folyam Algoritmusok
Folyam Algoritmusok
Folyam Algoritmusok
Ismétlés
4 1 100 001
2 010
2 3 010 011
3 011
2 3 010 011
4 1 100 001
2 010
2 3 010 011
3 011
2 3 010 011
4 1 100 001
2 010
2 3 010 011
3 011
2 3 010 011
4 1 100 001
2 010
2 3 010 011
3 011
2 3 010 011
Nem bizonyítjuk
Tétel
Egy szintezett maradékhálózatban egy blokkoló folyamot
megkereshetünk O(|V ||E|) lépésben. A Dinic algoritmus
futásideje O(|V |2 |E|).
Bizonyítás: A mélységi keresés egy módosított változatát
használjuk Hf -ben:
Mélységi kereséssel elindulunk s-ből t-be.
Ha egy v 6= t csúcsból már nem tudunk továbbmenni, v-t
töröljük, és visszalépünk az előző csúcsba
Ha találunk egy P s − t utat, a P mentén növeljük f 0 -t és
csökkentjük gf -et a minimális P -beli kapacitással.
Egyik él kapacitása 0-ra csökken. Legyen uv az s-től
legtávolabbi ilyen él.
Töröljük uv-t és visszalépünk egészen u-ig. Folytatjuk a
mélységi bejárást.
A keresés során minden élen max kétszer haladunk keresztül
(a javítást nem számolva), mert egy sima DFS szerint járjuk be
az éleket. Amikor javítunk, egy élet törlünk, tehát maximum
O(|E|) javítás lehetséges. Egy javításhoz O(|V |) lépés
szükséges.
Előfolyam
4 1
2
v
s 2 3 t
3
2 3
w
Az algoritmus futása a példa gráfon:
5 5
4 4
3 3
422 422
2 2
1 1
0 s u v w 0 s u v w
t t
u
4 1
2
v
s 2 3 t
3
2 3
w
Az algoritmus futása a példa gráfon:
5 5
4 4
3 3
422 422
2 2
1 1
0 s u v w 0 s u v w
t t
5 5
4 4
3 3
422 422
2 2
1 1
2 2 1
0 s u v w 0 s u v w
t t
6 6
4 3
5 5
4 4
3 2 1 3 2 1
22 22
2 2
1 1
0 s u v w 0 s u v w
t t
5 5
4 4
3 3
422 422
2 2
1 1
2 2 1
0 s u v w 0 s u v w
t t
6 6
4 3
5 5
4 4
3 2 1 3 2 1
22 22
2 2
1 1
0 s u v w 0 s u v w
t t
5 5
4 4
3 3
422 422
2 2
1 1
2 2 1
0 s u v w 0 s u v w
t t
6 6
4 3
5 5
4 4
3 2 1 3 2 1
22 22
2 2
1 1
0 s u v w 0 s u v w
t t
5 5
4 4
3 3
422 422
2 2
1 1
2 2 1
0 s u v w 0 s u v w
t t
6 6
4 3
5 5
4 4
3 2 1 3 2 1
22 22
2 2
1 1
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 1 3 1
22 22
2 2
1 1
3
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 2 1 3 2 1
2 2
2 2
1 1 3
31 1
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 1 3 1
22 22
2 2
1 1
3
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 2 1 3 2 1
2 2
2 2
1 1 3
31 1
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 1 3 1
22 22
2 2
1 1
3
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 2 1 3 2 1
2 2
2 2
1 1 3
31 1
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 1 3 1
22 22
2 2
1 1
3
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 2 1 3 2 1
2 2
2 2
1 1 3
31 1
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 2 1 3 2 2 1
2
2 2
3
1 3 1 3
13 1
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 2 2 1 3 2 2 1
2 2
1 1
1 3 1 3
1 3
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 2 1 3 2 2 1
2
2 2
3
1 3 1 3
13 1
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 2 2 1 3 2 2 1
2 2
1 1
1 3 1 3
1 3
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 2 1 3 2 2 1
2
2 2
3
1 3 1 3
13 1
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 2 2 1 3 2 2 1
2 2
1 1
1 3 1 3
1 3
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 2 1 3 2 2 1
2
2 2
3
1 3 1 3
13 1
0 s u v w 0 s u v w
t t
6 6
3 3
5 5
4 4
2 2
3 2 2 1 3 2 2 1
2 2
1 1
1 3 1 3
1 3
0 s u v w 0 s u v w
t t