mélységi bejárás

57
Mélységi bejárás Az algoritmus elve: Egy kezdőpontból kiindulva addig megyünk egy él mentén, ameddig el nem jutunk egy olyan csúcsba, amelyből már nem tudunk tovább menni, mivel nincs már meg nem látogatott szomszédja. Ekkor visszamegyünk az út utolsó előtti csúcsához, és onnan próbálunk egy másik él mentén tovább menni. Ha ezen az ágon is minden csúcsot már bejártunk, ismét visszamegyünk egy csúcsot, és így tovább.

Upload: nonnie

Post on 20-Mar-2016

34 views

Category:

Documents


0 download

DESCRIPTION

Mélységi bejárás. Az algoritmus elve: - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Mélységi bejárás

Mélységi bejárás

Az algoritmus elve:Egy kezdőpontból kiindulva addig megyünk egy él mentén, ameddig el nem jutunk egy olyan csúcsba, amelyből már nem tudunk tovább menni, mivel nincs már meg nem látogatott szomszédja. Ekkor visszamegyünk az út utolsó előtti csúcsához, és onnan próbálunk egy másik él mentén tovább menni. Ha ezen az ágon is minden csúcsot már bejártunk, ismét visszamegyünk egy csúcsot, és így tovább.

Page 2: Mélységi bejárás

MB(u) SKIP

Itt látogatjuk meg (érjük el először) az u-t, átszínezzükfehérről szürkére és a mélységi számát is beállítjuk.

Az u összes még meg nem látogatott szomszédjára feljegyezzük megelőző csúcsként az u-t és elindítjuk a bejárást.

Befejezzük az u bejárását, beszínezzük feketére, ésa befejezési számát is beállítjuk.

MélységiBejárás(G)

all u eleme V csúcsraszín[u]:=fehér

P[u]:=NIL

mszám[u]:=msz

mszám[u]:=0bszám[u]:=0

msz:0; bsz:=0all u eleme V csúcsra

szín[u]:=fehér

bszám[u]:=bsz

MB(u)

Inicializáló lépés: kezdetben minden csúcs fehér, a nincsmegelőzője és a mélységi befejezési száma: 0

Globális számlálók a mélységi és befelyezési számok meghatározására

A csúcsokat végignézve, a fehér csúcsokból indítjuk a rekurzívbejáró eljárást.

szín[v]=fehérP[v]:=uMB(v) SKIP

szín[u]:=feketebsz:=bsz+1

all v eleme Szomszéd(u)

szín[u]:=szürkeKiír(u)

msz:=msz+1

Stuktogramok

Page 3: Mélységi bejárás

A két ábrán látható ugyanozon gráf különböző elrendezésben. Az alsó ábrán láthatjuk a gráfot az inicializáló lépés lefutását követően.

• Egy csúcs legyen fehér, ha még nem jutottunk el hozzá a bejárás során• Egy csúcs legyen szürke, ha a bejárás során már elértük a csúcsot, de még nem állíthatjuk, hogy az illető csúcsból elérhető összes csúcsot meglátogattuk• A csúcs legyen fekete, ha azt mondhatjuk, hogy az illető csúcsból elérhető összes csúcsot már meglátogattuk és és visszamehetünk (vagy már visszamentünk) az idevezető út megelőző csúcsára.

MB(u) SKIP

MélységiBejárás(G)

all u eleme V csúcsraszín[u]:=fehér

P[u]:=NILmszám[u]:=0bszám[u]:=0

msz:0; bsz:=0all u eleme V csúcsra

szín[u]:=fehér

A bejárás során tároljuk el, hogy egy csúcsot hányadikként értünk el, azaz hányadikként lett szürke és tároljuk el, hogy hányadikként fejeztük be a csúcs, és a belőle elérhető csúcsok bejárását, azaz a csúcs hányadikként lett fekete. Az említett számokat nevezzük mélységi (bal alsó), illetve befejezési (jobb alsó) számnak és az ábrákon a csúcsok címkéi alatt fogjuk megjeleníteni.

Page 4: Mélységi bejárás

MB(1) SKIP

MélységiBejárás(G)

all u eleme V csúcsraszín[u]:=fehér

P[u]:=NILmszám[u]:=0bszám[u]:=0

msz:0; bsz:=01 eleme V csúcsra

szín[1]:=fehér

Az 1. csúcsot érjük el elsőként, erre hívjuk meg az MB(u) eljárást

bszám[u]:=bsz

MB(1)

szín[v]=fehérP[v]:=uMB(v) SKIP

szín[u]:=feketebsz:=bsz+1

all v eleme Szomszéd(u)

szín[u]:=szürkeKiír(u)

msz:=msz+1mszám[u]:=msz

Page 5: Mélységi bejárás

bszám[u]:=bsz

MB(1)

szín[v]=fehérP[v]:=uMB(v) SKIP

szín[u]:=feketebsz:=bsz+1

all v eleme Szomszéd(u)

szín[1]:=szürkeKiír(1)

msz:=0+1mszám[1]:=1

Ki: 1

Ezen a dián az MB(u) eljárás inicializáló lépése utáni állapotot látjuk. A kezdőcsúcsot érjük el elsőként, tehát ezt színezzük szürkére és a mélységi számot 1-re állítjuk.

Page 6: Mélységi bejárás

mszám[1]:=1

bszám[u]:=bsz

MB(1)

szín[v]=fehérP[v]:=uMB(v) SKIP

szín[u]:=feketebsz:=bsz+1

4 eleme Szomszéd(1)

szín[1]:=szürkeKiír(1)

msz:=0+1

Szomszéd(1) = [4 , 5]

Az 1-es csúcsból két él vezet ki. Ezen két él mentén indulhatunk ki, melyek a Szomszéd(1) minimum prioritásos sorban vannak elhelyezve. Ez az adatszerkezet biztosítja, hogy a 4-es csúcsot érjük el másodikként. (Hiszen csak a legelső vagyis a legkisebb kulcsú elemet vehetjük ki a sorból).

Ki: 1

MB(1)

Page 7: Mélységi bejárás

mszám[1]:=1

bszám[u]:=bsz

MB(1)

szín[4]=fehérP[4]:=1MB(4) SKIP

szín[u]:=feketebsz:=bsz+1

4 eleme Szomszéd(1)

szín[1]:=szürkeKiír(1)

msz:=0+1

Következő lépésben megvizsgáljuk a 4. csúcs színét. Ha fehér, akkor az igaz ág hajtódik végre, melynek során a 4. csúcs szülőpointerét ráállítjuk az 1-es csúcsra és rekurzívan meghívódik az MB(u) eljárás a 4. csúcsra. A rekurzív hívás szerkezetét jobb oldalon láthatjuk.

Ki: 1

MB(1) MB(4)

Page 8: Mélységi bejárás

bszám[u]:=bsz

MB(4)

szín[4]=fehérP[4]:=1MB(4) SKIP

szín[u]:=feketebsz:=bsz+1

4 eleme Szomszéd(1)

szín[4]:=szürkeKiír(4)

msz:=1+1mszám[4]:=2

Szomszéd(4) = [7]

MB(1) MB(4)

Ki: 1, 4

Hasonlóan mint az 1-es csúcsnál, az MB(u) eljárás inicializáló rész lefutása utáni állapotot látjuk: a 4-es csúcs szürke, értékét kiírattuk , a mélységi számot megnöveltük eggyel és feljegyeztük értékét a 4-es csúcshoz.

Page 9: Mélységi bejárás

mszám[4]:=2

bszám[u]:=bsz

MB(4)

szín[7]=fehérP[7]:=4MB(7) SKIP

szín[u]:=feketebsz:=bsz+1

7 eleme Szomszéd(4)

szín[4]:=szürkeKiír(4)

msz:=1+1

Szomszéd(4) = [7]

MB(1) MB(4) MB(7)

Megvizsgáljuk a 4-es csúcshoz tartozó szomszédsági sort. Jelenleg egy eleme van (7), melynek színe fehér ezért ismételten az igaz ág hajtódik végre. Itt a 7 csúcs szülő pointerét ráállítjuk a 4-es csúcsra és rekurzívan meghívjuk az MB(u) eljárást a 7. csúcsra.

Page 10: Mélységi bejárás

mszám[7]:=3

bszám[u]:=bsz

MB(7)

szín[7]=fehérP[7]:=4MB(7) SKIP

szín[u]:=feketebsz:=bsz+1

7 eleme Szomszéd(4)

szín[7]:=szürkeKiír(7)

msz:=2+1

MB(1) MB(4) MB(7)

Szomszéd(7) = [4 , 5 , 10]

MB(7) eljárás inicializálás utáni állapot.

Ki: 1, 4, 7

Page 11: Mélységi bejárás

mszám[7]:=3

bszám[u]:=bsz

MB(7)

szín[4] != fehérP[7]:=4MB(7) SKIP

szín[u]:=feketebsz:=bsz+1

4 eleme Szomszéd(7)

szín[7]:=szürkeKiír(7)

msz:=2+1

MB(1) MB(4) MB(7)

Szomszéd(7) = [4 , 5 , 10]

Szomszéd(7) első eleme szürke csúcsra mutat ezért továbblépünk a következő elemre.

Ki: 1, 4, 7

Page 12: Mélységi bejárás

bszám[u]:=bsz

MB(7)

szín[5] = fehérP[5]:=7MB(5) SKIP

szín[u]:=feketebsz:=bsz+1

5 eleme Szomszéd(7)

szín[7]:=szürkeKiír(7)

msz:=2+1mszám[7]:=3

MB(1) MB(4) MB(7) MB(5)

Szomszéd(7) következő eleme az 5 csúcsra mutat. MB(5) fv-t, rekurzívan meghívjuk.

Ki: 1, 4, 7

Szomszéd(7) = [4 , 5 , 10]

Page 13: Mélységi bejárás

bszám[u]:=bsz

MB(5)

szín[5] = fehérP[5]:=7MB(5) SKIP

szín[u]:=feketebsz:=bsz+1

5 eleme Szomszéd(7)

szín[5]:=szürkeKiír(5)

msz:=3+1mszám[5]:=4

MB(1) MB(4) MB(7) MB(5)

Ki: 1, 4, 7, 5

Page 14: Mélységi bejárás

bszám[u]:=bsz

MB(5)

szín[3] = fehérP[3]:=5MB(3) SKIP

szín[u]:=feketebsz:=bsz+1

3 eleme Szomszéd(5)

szín[5]:=szürkeKiír(5)

msz:=3+1mszám[5]:=4

MB(1) MB(4) MB(7) MB(5) MB(3)

Ki: 1, 4, 7, 5

Szomszéd(5) = [3]

Page 15: Mélységi bejárás

bszám[u]:=bsz

MB(3)

szín[3] = fehérP[3]:=5MB(3) SKIP

szín[u]:=feketebsz:=bsz+1

3 eleme Szomszéd(5)

szín[3]:=szürkeKiír(3)

msz:=4+1mszám[3]:=5

MB(1) MB(4) MB(7) MB(5) MB(3)

Ki: 1, 4, 7, 5, 3

Page 16: Mélységi bejárás

Szomszéd(3) = [2,6]

bszám[u]:=bsz

MB(3)

szín[2] = fehérP[2]:=3MB(2) SKIP

szín[u]:=feketebsz:=bsz+1

2 eleme Szomszéd(3)

szín[3]:=szürkeKiír(3)

msz:=4+1mszám[3]:=5

MB(1) MB(4) MB(7) MB(5) MB(3) MB(2)

Ki: 1, 4, 7, 5, 3

Page 17: Mélységi bejárás

bszám[u]:=bsz

MB(2)

szín[2] = fehérP[2]:=3MB(2) SKIP

szín[u]:=feketebsz:=bsz+1

2 eleme Szomszéd(3)

szín[2]:=szürkeKiír(2)

msz:=5+1mszám[2]:=6

MB(1) MB(4) MB(7) MB(5) MB(3) MB(2)

Ki: 1, 4, 7, 5, 3, 2

Page 18: Mélységi bejárás

Szomszéd(2) = [1]

bszám[u]:=bsz

MB(2)

szín[1] != fehérP[2]:=3MB(2) SKIP

szín[u]:=feketebsz:=bsz+1

1 eleme Szomszéd(2)

szín[2]:=szürkeKiír(2)

msz:=5+1mszám[2]:=6

MB(1) MB(4) MB(7) MB(5) MB(3) MB(2)

Ki: 1, 4, 7, 5, 3, 2

Page 19: Mélységi bejárás

Szomszéd(2) = [1]

mszám[2]:=6

bszám[2]:=1

MB(2)

szín[1] != fehérP[2]:=3MB(2) SKIP

szín[2]:=feketebsz:=0+1

1 eleme Szomszéd(2)

szín[2]:=szürkeKiír(2)

msz:=5+1

MB(1) MB(4) MB(7) MB(5) MB(3) MB(2)

Ki: 1, 4, 7, 5, 3, 2

Page 20: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6)

Ki: 1, 4, 7, 5, 3, 2

Szomszéd(3) = [6]

bszám[u]:=bsz

MB(3)

szín[6] = fehérP[6]:=3MB(6) SKIP

szín[u]:=feketebsz:=bsz+1

6 eleme Szomszéd(3)

szín[3]:=szürkeKiír(3)

msz:=4+1mszám[3]:=5

Page 21: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6)

mszám[6]:=7

bszám[u]:=bsz

MB(6)

szín[6] = fehérP[6]:=3MB(6) SKIP

szín[u]:=feketebsz:=bsz+1

6 eleme Szomszéd(3)

szín[6]:=szürkeKiír(6)

msz:=6+1

Ki: 1, 4, 7, 5, 3, 2, 6

Page 22: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8)

bszám[u]:=bsz

MB(6)

szín[8] = fehérP[8]:=6MB(8) SKIP

szín[u]:=feketebsz:=bsz+1

8 eleme Szomszéd(6)

szín[6]:=szürkeKiír(6)

msz:=6+1mszám[6]:=7

Szomszéd(6) = [8]

Ki: 1, 4, 7, 5, 3, 2, 6

Page 23: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8)

mszám[8]:=8

bszám[u]:=bsz

MB(8)

szín[8] = fehérP[8]:=6MB(8) SKIP

szín[u]:=feketebsz:=bsz+1

8 eleme Szomszéd(6)

szín[8]:=szürkeKiír(8)

msz:=7+1

Ki: 1, 4, 7, 5, 3, 2, 6, 8

Page 24: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8) MB(11)

bszám[u]:=bsz

MB(8)

szín[11] = fehérP[11]:=8MB(11) SKIP

szín[u]:=feketebsz:=bsz+1

11 eleme Szomszéd(8)

szín[8]:=szürkeKiír(8)

msz:=7+1mszám[8]:=8

Szomszéd(8) = [11, 12]

Ki: 1, 4, 7, 5, 3, 2, 6, 8

Page 25: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8) MB(11)

mszám[11]:=9

bszám[u]:=bsz

MB(11)

szín[11] = fehérP[11]:=8MB(11) SKIP

szín[u]:=feketebsz:=bsz+1

11 eleme Szomszéd(8)

szín[11]:=szürkeKiír(11)

msz:=8+1

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11

Page 26: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8) MB(11) MB(12)

mszám[11]:=9

bszám[u]:=bsz

MB(11)

szín[12] = fehérP[12]:=11MB(12) SKIP

szín[u]:=feketebsz:=bsz+1

12 eleme Szomszéd(11)

szín[11]:=szürkeKiír(11)

msz:=8+1

Szomszéd(11) = [12]

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11

Page 27: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8) MB(11) MB(12)

mszám[12]:=10

bszám[u]:=bsz

MB(12)

szín[12] = fehérP[12]:=11MB(12) SKIP

szín[u]:=feketebsz:=bsz+1

12 eleme Szomszéd(11)

szín[12]:=szürkeKiír(12)

msz:=9+1

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12

Page 28: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8) MB(11) MB(12) MB(9)

mszám[12]:=10

bszám[u]:=bsz

MB(12)

szín[9] = fehérP[9]:=12MB(9) SKIP

szín[u]:=feketebsz:=bsz+1

9 eleme Szomszéd(12)

szín[12]:=szürkeKiír(12)

msz:=9+1

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12

Szomszéd(12) = [9, 11]

Page 29: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8) MB(11) MB(12) MB(9)

bszám[u]:=bsz

MB(9)

szín[9] = fehérP[9]:=12MB(9) SKIP

szín[u]:=feketebsz:=bsz+1

9 eleme Szomszéd(12)

szín[9]:=szürkeKiír(9)

msz:=10+1mszám[9]:=11

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 30: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8) MB(11) MB(12) MB(9)

bszám[u]:=bsz

MB(9)

szín[8] != fehérP[9]:=12MB(9) SKIP

szín[u]:=feketebsz:=bsz+1

8 eleme Szomszéd(9)

szín[9]:=szürkeKiír(9)

msz:=10+1mszám[9]:=11

Szomszéd(9) = [8, 12]

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 31: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8) MB(11) MB(12) MB(9)

mszám[9]:=11

bszám[u]:=bsz

MB(9)

szín[12] != fehérP[9]:=12MB(9) SKIP

szín[u]:=feketebsz:=bsz+1

12 eleme Szomszéd(9)

szín[9]:=szürkeKiír(9)

msz:=10+1

Szomszéd(9) = [8, 12]

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 32: Mélységi bejárás

mszám[9]:=11

bszám[9]:=3

MB(9)

szín[12] != fehérP[9]:=12MB(9) SKIP

szín[9]:=feketebsz:=2+1

12 eleme Szomszéd(9)

szín[9]:=szürkeKiír(9)

msz:=10+1

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8) MB(11) MB(12) MB(9) Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 33: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8) MB(11) MB(12)

bszám[u]:=bsz

MB(12)

szín[11] != fehérP[9]:=12MB(9) SKIP

szín[u]:=feketebsz:=bsz+1

11 eleme Szomszéd(12)

szín[12]:=szürkeKiír(12)

msz:=9+1mszám[12]:=10

Szomszéd(12) = [9, 11]

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 34: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8) MB(11) MB(12)

mszám[12]:=10

bszám[12]:=3

MB(12)

szín[11] != fehérP[9]:=12MB(9) SKIP

szín[12]:=feketebsz:=2+1

11 eleme Szomszéd(12)

szín[12]:=szürkeKiír(12)

msz:=9+1

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 35: Mélységi bejárás

bszám[u]:=bsz

MB(11)

szín[12] != fehérP[12]:=11MB(12) SKIP

szín[u]:=feketebsz:=bsz+1

12 eleme Szomszéd(11)

szín[11]:=szürkeKiír(11)

msz:=8+1mszám[11]:=9

Szomszéd(11) = [12]

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8) MB(11)

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 36: Mélységi bejárás

mszám[11]:=9

bszám[4]:=4

MB(11)

szín[12] != fehérP[12]:=11MB(12) SKIP

szín[11]:=feketebsz:=3+1

12 eleme Szomszéd(11)

szín[11]:=szürkeKiír(11)

msz:=8+1

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8) MB(11)

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 37: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8)

mszám[8]:=8

bszám[u]:=bsz

MB(8)

szín[12] != fehérP[11]:=8MB(11) SKIP

szín[u]:=feketebsz:=bsz+1

12 eleme Szomszéd(8)

szín[8]:=szürkeKiír(8)

msz:=7+1

Szomszéd(8) = [11, 12]

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 38: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6) MB(8)

bszám[8]:=5

MB(8)

szín[12] != fehérP[11]:=8MB(11) SKIP

szín[8]:=feketebsz:=4+1

12 eleme Szomszéd(8)

szín[8]:=szürkeKiír(8)

msz:=7+1mszám[8]:=8

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 39: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6)

bszám[u]:=bsz

MB(6)

szín[8] != fehérP[6]:=3MB(6) SKIP

szín[u]:=feketebsz:=bsz+1

8 eleme Szomszéd(6)

szín[6]:=szürkeKiír(6)

msz:=6+1mszám[6]:=7

Szomszéd(6) = [8]

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 40: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3) MB(6)

mszám[6]:=7

bszám[6]:=6

MB(6)

szín[8] != fehérP[6]:=3MB(6) SKIP

szín[6]:=feketebsz:=5+1

8 eleme Szomszéd(6)

szín[6]:=szürkeKiír(6)

msz:=6+1

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 41: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5) MB(3)

Szomszéd(3) = [2,6]

bszám[u]:=bsz

MB(3)

szín[6] != fehérP[6]:=3MB(2) SKIP

szín[u]:=feketebsz:=bsz+1

6 eleme Szomszéd(3)

szín[3]:=szürkeKiír(3)

msz:=4+1mszám[3]:=5

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 42: Mélységi bejárás

mszám[3]:=5

bszám[3]:=7

MB(3)

szín[6] != fehérP[6]:=3MB(2) SKIP

szín[3]:=feketebsz:=6+1

6 eleme Szomszéd(3)

szín[3]:=szürkeKiír(3)

msz:=4+1

MB(1) MB(4) MB(7) MB(5) MB(3)

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 43: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5)

mszám[5]:=4

bszám[u]:=bsz

MB(5)

szín[3] != fehérP[5]:=7MB(5) SKIP

szín[u]:=feketebsz:=bsz+1

3 eleme Szomszéd(5)

szín[5]:=szürkeKiír(5)

msz:=3+1

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Szomszéd(5) = [3]

Page 44: Mélységi bejárás

MB(1) MB(4) MB(7) MB(5)

bszám[5]:=8

MB(5)

szín[3] != fehérP[5]:=7MB(5) SKIP

szín[5]:=feketebsz:=7+1

3 eleme Szomszéd(5)

szín[5]:=szürkeKiír(5)

msz:=3+1mszám[5]:=4

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 45: Mélységi bejárás

bszám[u]:=bsz

MB(7)

szín[10]=fehérP[10]:=7MB(10) SKIP

szín[u]:=feketebsz:=bsz+1

10 eleme Szomszéd(7)

szín[7]:=szürkeKiír(7)

msz:=2+1mszám[7]:=3

MB(1) MB(4) MB(7) MB(10)

Szomszéd(7) = [4 , 5 , 10]

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9

Page 46: Mélységi bejárás

Szomszéd(10) = [7, 8, 11]

mszám[10]:=12

bszám[u]:=bsz

MB(10)

szín[10]=fehérP[10]:=7MB(10) SKIP

szín[u]:=feketebsz:=bsz+1

10 eleme Szomszéd(7)

szín[10]:=szürkeKiír(10)

msz:=11+1

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9, 10

MB(1) MB(4) MB(7) MB(10)

Page 47: Mélységi bejárás

Szomszéd(10) = [7, 8, 11]

bszám[u]:=bsz

MB(10)

szín[7]!=fehérP[10]:=7MB(10) SKIP

szín[u]:=feketebsz:=bsz+1

7 eleme Szomszéd(10)

szín[10]:=szürkeKiír(10)

msz:=11+1mszám[10]:=12

MB(1) MB(4) MB(7) MB(10)

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9, 10

Page 48: Mélységi bejárás

Szomszéd(10) = [7, 8, 11]

mszám[10]:=12

bszám[u]:=bsz

MB(10)

szín[8]!=fehérP[10]:=7MB(10) SKIP

szín[u]:=feketebsz:=bsz+1

8 eleme Szomszéd(10)

szín[10]:=szürkeKiír(10)

msz:=11+1

MB(1) MB(4) MB(7) MB(10)

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9, 10

Page 49: Mélységi bejárás

Szomszéd(10) = [7, 8, 11]

bszám[u]:=bsz

MB(10)

szín[11]!=fehérP[10]:=7MB(10) SKIP

szín[u]:=feketebsz:=bsz+1

11 eleme Szomszéd(10)

szín[10]:=szürkeKiír(10)

msz:=11+1mszám[10]:=12

MB(1) MB(4) MB(7) MB(10)

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9, 10

Page 50: Mélységi bejárás

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9, 10

mszám[10]:=12

bszám[10]:=9

MB(10)

szín[11]!=fehérP[10]:=7MB(10) SKIP

szín[10]:=feketebsz:=8+1

11 eleme Szomszéd(10)

szín[10]:=szürkeKiír(10)

msz:=11+1

MB(1) MB(4) MB(7) MB(10)

Page 51: Mélységi bejárás

bszám[u]:=bsz

MB(7)

szín[5] != fehérP[7]:=4MB(7) SKIP

szín[u]:=feketebsz:=bsz+1

5 eleme Szomszéd(7)

szín[7]:=szürkeKiír(7)

msz:=2+1mszám[7]:=3

MB(1) MB(4) MB(7)

Szomszéd(7) = [4 , 5 , 10]

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9, 10

Page 52: Mélységi bejárás

mszám[7]:=3

bszám[u]:=bsz

MB(7)

szín[10] != fehérP[7]:=4MB(7) SKIP

szín[u]:=feketebsz:=bsz+1

10 eleme Szomszéd(7)

szín[7]:=szürkeKiír(7)

msz:=2+1

MB(1) MB(4) MB(7)

Szomszéd(7) = [4 , 5 , 10]

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9, 10

Page 53: Mélységi bejárás

bszám[7]:=10

MB(7)

szín[10] != fehérP[7]:=4MB(7) SKIP

szín[7]:=feketebsz:=9+1

10 eleme Szomszéd(7)

szín[7]:=szürkeKiír(7)

msz:=2+1mszám[7]:=3

MB(1) MB(4) MB(7)

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9, 10

Page 54: Mélységi bejárás

mszám[4]:=2

bszám[u]:=bsz

MB(4)

szín[7] !=fehérP[7]:=4MB(7) SKIP

szín[u]:=feketebsz:=bsz+1

7 eleme Szomszéd(4)

szín[4]:=szürkeKiír(4)

msz:=1+1

Szomszéd(4) = [7]

MB(1) MB(4)

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9, 10

Page 55: Mélységi bejárás

mszám[4]:=2

bszám[4]:=11

MB(4)

szín[7] !=fehérP[7]:=4MB(7) SKIP

szín[4]:=feketebsz:=10+1

7 eleme Szomszéd(4)

szín[4]:=szürkeKiír(4)

msz:=1+1

MB(1) MB(4)

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9, 10

Page 56: Mélységi bejárás

bszám[u]:=bsz

MB(1)

szín[5] !=fehérP[v]:=uMB(v) SKIP

szín[u]:=feketebsz:=bsz+1

5 eleme Szomszéd(1)

szín[1]:=szürkeKiír(1)

msz:=0+1mszám[1]:=1

Szomszéd(1) = [4 , 5]

MB(1)

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9, 10

Page 57: Mélységi bejárás

bszám[1]:=12

MB(1)

szín[v]=fehérP[v]:=uMB(v) SKIP

szín[1]:=feketebsz:=11+1

4 eleme Szomszéd(1)

szín[1]:=szürkeKiír(1)

msz:=0+1mszám[1]:=1

MB(1)

Ki: 1, 4, 7, 5, 3, 2, 6, 8, 11, 12, 9, 10