1 Szélességi Bejárás Györgyi Tamás – GYTNAAI.ELTE 2007 Március 22 Algoritmusok És Adatszerkezetek 2 Gráfalgoritmus 1 2 0 1 2 2 3 3 S b a d e f h g c.

Slides:



Advertisements
Hasonló előadás
A Floyd-Warshall algoritmus
Advertisements

Készítette: Mester Tamás METRABI.ELTE.  Adott egy G irányított vagy irányítás nélküli, véges gráf. Az eljárás célja a G gráf összes csúcsának bejárása.
Készítette: Major Máté
Készítette: Mester Tamás METRABI.ELTE.  Adott egy G irányított vagy irányítás nélküli, véges gráf. Az eljárás célja a G gráf összes csúcsának bejárása.
Készítette: Hanics Anikó. Az algoritmus ADT szintű leírása: A d[1..n] és P[1..n] tömböket, a korábban ismertetett módon, a távolság és a megelőző csúcs.
Dijkstra algoritmus Irányított gráfban.
Szélességi bejárás Párhuzamosítása.
Szélességi bejárás , 0.
Dijkstra algoritmus Baranyás Bence. Feladat Adott egy G=(V,E) élsúlyozott, irányított vagy irányítás nélküli, negatív élsúlyokat nem tartalmazó, véges.
Gráfok szélességi bejárása
Gráf Szélességi bejárás
Készítette Schlezák Márton
Gráfok szélességi bejárása Algoritmus bemutatása egy gráfon példa.
Ág és korlát algoritmus
Számoljuk meg rekurzív függvénnyel egy bináris fa leveleit!
Gráf szélességi bejárása. Alapfogalmak G = (V,E)irányított, véges, nem üres gráf d (s,u)két csúcs távolsága lút hossza, élek száma Qsor adatszerkezet.
1. Univerzális nyelő Csúcsmátrixos ábrázolás esetén a legtöbb gráfalgoritmus futási ideje O(n2) azonban van kivétel. Egy irányított gráf egy csúcsa univerzális.
Prím algoritmus.
1 Györgyi Tamás – GYTNAAI.ELTE 2007 Április 03 Algoritmusok És Adatszerkezetek 2 Gráfalgoritmus Bellman-Ford Algoritmusa S a b d e
Dijkstra algoritmus Algoritmusok és adatszerkezetek 2. Újvári Zsuzsanna.
Szélességi bejárás A szélességi bejárással egy irányított vagy irányítás nélküli véges gráfot járhatunk be a kezdőcsúcstól való távolságuk növekvő sorrendjében.
Gráf szélességi bejárása
Dijkstra algoritmus. Az algoritmus elve Kezdésnél a start csúcson kívül minden csúcs távolsága legyen ∞. (A start csúcs távolsága 0) Feltételes minimum.
Készítette: Lakos Péter.  Adott egy élsúlyozott, véges gráf  Negatív élsúlyokat nem tartalmaz  Lehet irányított vagy irányítatlan  Továbbá adott egy.
Készítette: Lakos Péter.  Adott egy irányított vagy irányítatlan, véges gráf.  Írjuk ki a csúcsokat egy kezdőcsúcstól való távolságuk növekvő sorrendjében.
Dijkstra-algoritmus ismertetése
Algoritmusok II. Gyakorlat 2. Feladat Pup Márton.
Algoritmusok II. Gyakorlat 3. Feladat Pup Márton.
Hierarchikus lista Kétféle értelemezése van:
Gráf Szélességi bejárás/keresés algoritmusa
Készítette: Mester Tamás METRABI.ELTE.  Adott egy G=(V,E) élsúlyozott, irányított vagy irányítás nélküli, negatív élsúlyokat nem tartalmazó, véges gráf.
A Dijkstra algoritmus.
Gráf szélességi bejárása SzB(G,p). Tetszőleges gráf, melyben a p csúcsot választottam kiindulónak: A gráfnak megfelelő fa:
SZÉLESSÉGI BEJÁRÁS Gréczy Ákos – JKR7ZR. MESE Van egy középkori kisváros, ahol az utcai lámpákat egy korosodó lámpagyújtogató ember gyújtja fel. Egyik.
Dijkstra algoritmusa Gubicza József (GUJQAAI.ELTE)
Prim algoritmusa Gubicza József (GUJQAAI.ELTE). Jellemzők Cél: Adott egyszerű gráfban a min. költségű feszítőfa meghatározása. Algoritmikus szinten: 3.
1 Dijkstra Algoritmusa Györgyi Tamás – GYTNAAI.ELTE 2007 Április 02 Algoritmusok És Adatszerkezetek 2 Gráfalgoritmus S a b c d e
Az ábrán az inicializáló blokk lefutása utáni állapotot láthatjuk. A KÉSZ halmazhoz való tartozást színezéssel valósítjuk meg. A nem KÉSZ csúcsok fehérek,
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.
Szélességi bejárás. Kezdőcsúcsból felvétele Innen haladunk egy szinttel mélyebbre, felvesszük az összes olyan csúcsot, amit így elérhetünk Ha elfogytak,
Szélességi bejárás. Kezdőcsúcs felvétele Innen haladunk egy szinttel lejebb, itt felvesszük az összes olyan csúcsot, amit elérünk Ha elfogytak, akkor.
Háló- (gráf-) algoritmusok
Algoritmus és adatszerkezet Tavaszi félév Tóth Norbert1 Floyd-Warshall-algoritmus Legrövidebb utak keresése.
Bellmann-Ford Algoritmus
INFOÉRA Gráfok, gráfalgoritmusok I. (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Juhász István-Zsakó László: Informatikai.
Gráfok ábrázolása teljesen láncoltan
Horváth Bettina VZSRA6.  Célja: Az eljárás célja egy véges gráf összes csúcsának bejárása a kezdőcsúcstól való távolságuk szerinti növekvő sorrendben.
Útkeresések.
SZÉLESSÉGI BEJÁRÁS Pap Imre DVX468. A bejárás Meglátogatjuk az első csúcsot, majd ennek a csúcsnak az összes szomszédját. Aztán ezen szomszédok összes.
Diszjunkt halmazok adatszerkezete A diszjunkt halmaz adatszerkezet diszjunkt dinamikus halmazok S={S 1,…,S n } halmaza. Egy halmazt egy képviselője azonosít.
Gráf szélességi bejárása. Cél Az algoritmus célja az, hogy bejárjuk egy véges gráf összes csúcsát és kiírjuk őket a kezdőcsúcstól való távolságuk szerint.
DIJKSTRA- ALGORITMUS. A Dijkstra-algoritmus egy mohó algoritmus, amivel irányított vagy irányítás nélküli, negatív élsúlyokat nem tartalmazó, véges gráfokban.
Gráf szélességi bejárása. A szélességi bejárás elmélete Célja egy véges gráf összes csúcsának bejárása a kezdőcsúcstól való távolságuk szerinti növekvő.
Gráfalgoritmusok Szélességi bejárás.
Szélességi bejárás Gráf-algoritmusok Algoritmusok és adatszerkezetek II. Gergály Gábor WZBNCH1.
Készítette : Giligor Dávid Neptun : HSYGGS
Prim algoritmus Algoritmusok és adatszerkezetek 2. Újvári Zsuzsanna.
INFOÉRA Gráfok, gráfalgoritmusok II. (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Juhász István-Zsakó László: Informatikai.
Szélességi bejárás. Véges gráf összes csúcsának bejárása a kezdőcsúcstól való távolságuk szerinti növekvő sorrendben Egy csúcsot egyszer járunk be Egyenlő.
Dijkstra algoritmus. Egy minimális költségű utat keres élsúlyozott gráfban A gráf lehet irányított vagy irányítás nélküli Feltétele, hogy pozitív élsúlyok.
Dijkstra algoritmus. Az algoritmus működése  Kezdésnél a kezdő csúcson kívül minden csúcs távolsága legyen ∞, a kezdő csúcs távolsága 0.  Feltételes.
Gráf Szélességi bejárás Készítette: Giligor Dávid Neptun : HSYGGS.
3. Feladat Szélességi Bejárás FZGAF0 – Pintér László.
Eötvös Konferencia, 2008 április 26. Kovács Máté 1 Útkeresések optimalizálása számítógépes játékokban.
Algoritmus DAG = irányított körmentes gráf. Először ezt a tulajdonságot ellenőrizzük (mélységi bejárással), aztán rendezzük: Q: Sor adatszerkezet, kezdetben.
Szélességi bejárás Pátyerkó Dorina (VTYX9O). Szélességi bejárás algoritmusa Kijelölünk egy kezdőcsúcsot. A csúcs szomszédjait megkeressük, majd betesszük.
A Dijkstra algoritmus.
INFOÉRA Gráfok, gráfalgoritmusok II. (Horváth Gyula és Szlávi Péter előadásai felhasználásával) IDE KELL: prioritási sor kupaccal. Juhász.
Gráfalgoritmusok G=(V,E) gráf ábrázolása
Gráfalgoritmusok G=(V,E) gráf ábrázolása
Előadás másolata:

1 Szélességi Bejárás Györgyi Tamás – GYTNAAI.ELTE 2007 Március 22 Algoritmusok És Adatszerkezetek 2 Gráfalgoritmus S b a d e f h g c

2 Algoritmusok És Adatszerkezetek 2 A szélességi bejárás az egyik legegyszerűbb gráfbejáró algoritmus, melyre sok gráfalgoritmus is alapul. Például a Dijkstra legrövidebb utat meghatározó algoritmusa is a szélességi kereséshez hasonló gondolat menetet használja. Az algoritmus egyaránt alkalmazható irányított és irányítatlan gráfok esetén. A szélességi keresés elnevezés onnan kapta a nevét, hogy az algoritmus a már elért és a még felfedezetlen csúcsok közötti határvonalat egyenletesen terjeszti ki a határ teljes széltében. A szélességi bejárás feladata: Minden csúcsot egy s kezdőcsúcsból kiinduló legrövidebb úton érjünk el. A szélességi bejárás létrehoz egy szélességi fát, amely kezdetben csak a gyökeret tartalmazza.

3 Az algoritmus a bejárás pillanatnyi állapotát a csúcsok fehér szürke, illetve fekete színezésével tartja számon. Kezdetben minden csúcs szine fehér. szin[u]:=fehér; d[u]:=∞; π[u]:=Nil; for all u Є V\{s} Amikor először rátalálunk egy csúcsra, úgy a színe már megváltozik Szürkére. Algoritmusok És Adatszerkezetek 2 Egy fekete csúcs összes szomszédja már elért csúcs, tehát a szürke csúcsoknak lehetnek fehér szomszédjai, melyek alkotják az élért és még felfedezetlen csúcsok közötti határt. A szélességi bejárás eredménye függhet attól, hogy az egyes csúcsok szomszédjait milyen sorrendben vesszük figyelembe. Ez az jelenti hogy a szélességi változhat, azonban a d távolság értékek ugyanazok lesznek minden esetben.

4 Szélességi Bejárás (G, s) szin[v]:=szürke; π[v]:=u; d[v]:=d[u]+1; sorba(Q,v); sorból(Q,u); szin[u]:=fekete; üresSor(Q); sorba(Q,s); szin[u]:=fehér; d[u]:=∞; π[u]:=Nil; szin[u]:=szürke; d[s]:=0; π[u]:=Nil; szin[v] = fehér skip ┐ üres-e(Q) for all v Є szomsz[u] for all u Є V\{s} Algoritmusok És Adatszerkezetek 2

5 Az algoritmus hatékonysága: T(n) = Θ(n) + σ(e) = σ(n+e)ahol n a csúcsok száma e az élek száma A két reprezentáció esetén a következők adódnak: 1 – Éllista esetén σ(n+e). 2 – Csúcsmátrix esetén σ(n+n 2 ). A szélességi keresés futási ideje a szomszédsági listás ábrázolás méretének linearis függvénye.

6 Algoritmusok És Adatszerkezetek 2 Sor Tartalma - Q A szélességi bejárás működésének szemléltetése egy irányítatlan gráfon: - Így néz ki az irányítatlan gráfom: c b a d e f h g

7 Sor Tartalma - Q A szélességi bejárás működésének szemléltetése egy irányítatlan gráfon: 1. lépés: Algoritmusok És Adatszerkezetek 2 c 0 ∞ ∞ 0 ∞ ∞ ∞ ∞ ∞ S b a d e f h g c

8 Sor Tartalma - Q A szélességi bejárás működésének szemléltetése egy irányítatlan gráfon: 2. lépés: Algoritmusok És Adatszerkezetek 2 d 1 1 ∞ 0 1 ∞ ∞ ∞ ∞ S b a d e f h g b 1 c

9 Sor Tartalma - Q 3. lépés: Algoritmusok És Adatszerkezetek 2 b 1 1 ∞ ∞ ∞ S b a d e f h g e 2 c f 2 A szélességi bejárás működésének szemléltetése egy irányítatlan gráfon:

10 Sor Tartalma - Q 4. lépés: Algoritmusok És Adatszerkezetek 2 e ∞ ∞ S b a d e f h g f 2 c a 2 A szélességi bejárás működésének szemléltetése egy irányítatlan gráfon:

11 Sor Tartalma - Q 5. lépés: Algoritmusok És Adatszerkezetek 2 f ∞ S b a d e f h g a 2 c g 3 A szélességi bejárás működésének szemléltetése egy irányítatlan gráfon:

12 Sor Tartalma - Q 6. lépés: Algoritmusok És Adatszerkezetek 2 a S b a d e f h g g 3 c h 3 A szélességi bejárás működésének szemléltetése egy irányítatlan gráfon:

13 Sor Tartalma - Q 7. lépés: Algoritmusok És Adatszerkezetek 2 g S b a d e f h g h 3 c A szélességi bejárás működésének szemléltetése egy irányítatlan gráfon:

14 Sor Tartalma - Q 8. lépés: Algoritmusok És Adatszerkezetek 2 h S b a d e f h g c A szélességi bejárás működésének szemléltetése egy irányítatlan gráfon:

15 Sor Tartalma - Q 9. lépés: Algoritmusok És Adatszerkezetek S b a d e f h g c A szélességi bejárás működésének szemléltetése egy irányítatlan gráfon:

16 Szélességi Bejárás Algoritmusok És Adatszerkezetek 2 Gráfalgoritmus Vége Györgyi Tamás – GYTNAAI.ELTE 2007 Március 22