Algoritmuselmélet. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 7.



Hasonló dokumentumok
Algoritmuselmélet. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 6.

A számítástudomány alapjai. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem

Adatszerkezetek 7a. Dr. IványiPéter

Algoritmuselmélet. 2-3 fák. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 8.

Algoritmusok és adatszerkezetek gyakorlat 07

10. előadás Speciális többágú fák

Líneáris függvények. Definíció: Az f(x) = mx + b alakú függvényeket, ahol m 0, m, b R elsfokú függvényeknek nevezzük.

7 7, ,22 13,22 13, ,28

Hierarchikus adatszerkezetek

Az első kiegyensúlyozott fa algoritmus. Kitalálói: Adelson-Velskii és Landis (1962)

Számláló rendezés. Példa

Elemi adatszerkezetek

Példa 30 14, 22 55,

Adatszerkezetek és algoritmusok

Tartalomjegyzék. Köszönetnyilvánítás. 1. Az alapok 1

Gyakorló feladatok ZH-ra

Fák Témakörök. Fa definíciója. Rekurzív típusok, fa adatszerkezet Bináris keresőfa, bejárások Bináris keresőfa, módosítás B-fa

Fa (Tree): csomópontok (nodes) halmaza, amelyeket élek (edges) kötnek össze, és teljesülnek az alábbi feltételek:

file:///d:/okt/ad/jegyzet/ad1/b+fa.html

Bináris keresőfa. Felépítés, alapvető műveletek. Programozás II. előadás. Szénási Sándor

10. tétel. Adatszerkezetek és algoritmusok vizsga Frissült: január 28.

Keresőfák és nevezetes algoritmusaikat szemléltető program

Kupac adatszerkezet. A[i] bal fia A[2i] A[i] jobb fia A[2i + 1]

Algoritmuselmélet. Függvények nagyságrendje, elágazás és korlátozás, dinamikus programozás. Katona Gyula Y.

Rendezettminta-fa [2] [2]

17. A 2-3 fák és B-fák. 2-3 fák

Algoritmusok és adatszerkezetek II.

EGY KERESZTPOLARIZÁCIÓS JELENSÉG BEMUTATÁSA FIZIKAI HALLGATÓI LABORATÓRIUMBAN

B-fa. Felépítés, alapvető műveletek. Programozás II. előadás. Szénási Sándor.

Adatszerkezetek 2. Dr. Iványi Péter

Algoritmuselmélet 2. előadás

1. feladat. 2. feladat

A MAXIMUM-KUPACOL eljárás helyreállítja az A[i] elemre a kupactulajdonságot. Az elemet süllyeszti cserékkel mindaddig, amíg a tulajdonság sérül.





Körkörös listák. fej. utolsó. utolsó. fej

Kupac adatszerkezet. 1. ábra.

file:///d:/apa/okt/ad/jegyzet/ad1/b+fa.html

7. BINÁRIS FÁK 7.1. A bináris fa absztrakt adattípus 7.2. A bináris fa absztrakt adatszerkezet

MEREVSZÁRNYÚ REPÜLŐGÉPEK VEZÉRSÍK-RENDSZEREINEK KIALAKÍTÁSA 3 REPÜLŐKÉPESSÉG

Buborékrendezés: Hanoi Tornyai: Asszimptótikus fv.ek: Láncolt ábrázolás: For ciklussal:

Ugrólisták. RSL Insert Example. insert(22) with 3 flips. Runtime?

1. ábra. Egy rekurzív preorder bejárás. Egy másik rekurzív preorder bejárás

Algoritmusok és adatszerkezetek II.

- Levelek: operandusok - Csomópontok: operátorok. Fenti kifejezés: (x+ (y 10)) * (6 / z) Bináris Keresőfa (BST) Példa bináris keresőfára.

A programozás alapjai előadás. [<struktúra változó azonosítók>] ; Dinamikus adatszerkezetek:

Elektromágneses hullámok

Másodfokú függvények

ELEKTRONIKAI ALAPISMERETEK

) (11.17) 11.2 Rácsos tartók párhuzamos övekkel

Szilárdságtan. Miskolci Egyetem GÉPÉSZMÉRNÖKI ÉS INFORMATIKAI KAR

Absztrakt adatstruktúrák A bináris fák

Felkészítő feladatok a 2. zárthelyire

Rendezések. Összehasonlító rendezések

492 Lantos-Kiss-Harmati: Szabályozástechnika gyakorlatok. 7. Gyakorlat

Atomfizika előadás Szeptember 29. 5vös 5km szeptember óra

16. Az AVL-fa. (Adelszon-Velszkij és Landisz, 1962) Definíció: t kiegyensúlyozott (AVL-tulajdonságú) t minden x csúcsára: Pl.:

Adatszerkezet - műveletek

Algoritmuselmélet. Gráfok megadása, szélességi bejárás, összefüggőség, párosítás. Katona Gyula Y.

Adatszerkezetek I. 7. előadás. (Horváth Gyula anyagai felhasználásával)

Egyesíthető prioritási sor

Hierarchikus adatszerkezetek

6. előadás. Kiegyensúlyozottság, AVL-fa, piros-fekete fa. Adatszerkezetek és algoritmusok előadás március 6.

A lecke célja: A tananyag felhasználója megismerje az anyagi pont mozgásának jellemzőit.

Matematika OKTV I. kategória 2017/2018 második forduló szakgimnázium-szakközépiskola

PROJEKTÉRTÉKELÉSI ALAPOK

Algoritmusok és adatszerkezetek gyakorlat 06 Adatszerkezetek

Az f függvénynek van határértéke az x = 2 pontban és ez a határérték 3-mal egyenl½o lim f(x) = 3.

Adatszerkezetek I. 8. előadás. (Horváth Gyula anyagai felhasználásával)

Információs Technológia

2. Koordináta-transzformációk

9. évfolyam Javítóvizsga felkészülést segítő feladatok

Bináris keresőfák. Adat : M Elemtip és Elemtip-on értelmezett egy lineáris rendezési reláció,

Atomfizika előadás 4. Elektromágneses sugárzás október 1.

Nagyságrendek. Kiegészítő anyag az Algoritmuselmélet tárgyhoz. Friedl Katalin BME SZIT február 1.

Az alkalmazott matematika tantárgy oktatásának sokszínűsége és módszertanának modernizálása az MSc képzésében

10.3. A MÁSODFOKÚ EGYENLET

Gyakori elemhalmazok kinyerése

... fi. ... fk. 6. Fabejáró algoritmusok Rekurzív preorder bejárás (elsőfiú-testvér ábrázolásra)

Algoritmusok bonyolultsága

Relációk. Vázlat. Példák direkt szorzatra

15. Többváltozós függvények differenciálszámítása

Vázlat. Relációk. Példák direkt szorzatra

ELEKTRONIKAI ALAPISMERETEK

Átlag napi elérés a 15 évesek és idősebbek körében országos

Néhány érdekes függvényről és alkalmazásukról

5. Szerkezetek méretezése

EUKLIDESZI TÉR. Euklideszi tér, metrikus tér, normált tér, magasabb dimenziós terek vektorainak szöge, ezek következményei

Fájlszervezés. Adatbázisok tervezése, megvalósítása és menedzselése

Σ imsc

Valószínűségszámítás feladatok

FIZIKA KÖZÉPSZINT. Első rész. Minden feladat helyes megoldásáért 2 pont adható.

Algoritmuselmélet. Mélységi keresés és alkalmazásai. Katona Gyula Y.

Módosítható Prioritási sor Binomiális kupaccal. Wednesday, March 21, 12

ELEKTRONIKAI ALAPISMERETEK

18. előadás ÁLLANDÓ KÖLTSÉGEK ÉS A KÖLTSÉGGÖRBÉK


Egzakt következtetés (poli-)fa Bayes-hálókban

Átírás:

Algorimuselméle Keresőfák, piros-fekee fák Kaona Gula Y. Sámíásudománi és Információelmélei Tansék Budapesi Műsaki és Gadaságudománi Egeem. előadás Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás / Keresőfák Tároljuk a U rendee halma elemei, hog BESZÚR, TÖRÖL, KERES, MIN, (MAX, TÓLIG) haékonak legenek. Bináris fa bejárása eljes fa (új def.): a alsó sin is ele van l sinű, eljes fának l csúcsa van. Fa csúcsai elem(), bal(), jobb() eseleg apa() és resfa() + Ha a gökér, pedig a -es csúcs, akkor * 5 bal(jobb()) =, apa(apa()) =, elem(bal()) =, resfa() =. Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás /

PREORDER, INORDER, POSTORDER pre() in() pos() begin begin begin láoga(); in(bal()); pos(bal()); pre(bal()); láoga(); pos(jobb()); pre(jobb()) in(jobb()) láoga() end end end + * 5 PREORDER: + 5 INORDER: 5 + POSTORDER: 5 + Lépéssám: O(n) Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás / Bináris keresőfa Definíció (Keresőfa-ulajdonság) Tesőleges csúcsra és a baloldali résfájában levő csúcsra iga, hog elem() elem(). Hasonlóan, ha eg csúcs a jobb résfájából, akkor elem() elem(). 0 Hái felada: Igaoljuk, hog eg bináris keresőfa elemei a fa inorder bejárása nemcsökkenő sorrendben láogaja meg. Eg kénelmes megállapodás: a ovábbiakban felessük, hog nincsenek ismélődő elemek a keresőfában. Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás /

Naiv algorimusok KERES(s,S): Össehasonlíjuk s-e S gökerében árol s elemmel. Ha s = s, akkor megaláluk. Ha s < s, akkor balra megünk ovább. KERES(, S) Ha s > s, akkor jobbra megünk. Ugane a ua járjuk be a KERES(5, S) kapcsán, de a nem aláljuk meg. Lépéssám: O(l), ahol l a fa mélsége MIN: mindig balra lépünk, amíg lehe MAX: mindig jobbra lépünk, amíg lehe Lépéssám: O(l) TÓLIG(a, b, S): KERES(a, S) INORDER a-ól b-ig Lépéssám: O(l + k), ahol k a a és b köö levő elemek sáma Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás 5 / Naiv BESZÚR BESZÚR(s, S): KERES(s, S)-sel megkeressük, hova kerülne, és új levele adunk hoá, pl. BESZÚR(, S): Lépéssám: O(l) Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás /

Naiv TÖRÖL TÖRÖL(s, S): Ha s levél, akkor riviális, pl. TÖRÖL(, S): TÖRÖL(s, S): Ha s-nek eg fia van, akkor: s fiú(s), pl. TÖRÖL(, S): Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás / Naiv TÖRÖL Vag pl. TÖRÖL(, S ): 0 0 TÖRÖL(s, S): Ha s-nek ké fia van, akkor vissaveejük a előő esere. s helére egük := MAX(bal(s))- és öröljük -. Pl. TÖRÖL(, S ): 0 0 Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás /

Naiv TÖRÖL Állíás := MAX(bal(s)) csúcsnak nem lehe ké fia. Bioníás. Ha lenne ké fia, akkor lenne eg jobb fia is. De ekkor >. Lépéssám: O(l) Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás / Faépíés naiv besúrásokkal Ha pl. a,,..., n soroaból épíünk fá íg, akkor e kapjuk: A épíés kölsége: + +... + (n ) = O(n ) Téel n Ha eg vélelen soroaból épíünk fá naiv besúrásokkal, akkor a épíés kölsége álagosan O(n log n). A kapo fa mélsége álagosan O(log n). Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás 0 /

Piros-fekee fák Olan bináris keresőfa, melnek mélsége nem lehe nag. BESZÚR, TÖRÖL, KERES, MIN, (MAX, TÓLIG) haékonak. Definíció A piros-fekee fa eg bináris keresőfa, melre eljesülnek a kövekeők: Minden nem levél csúcsnak fia van. Elemeke belső csúcsokban árolunk. Teljesül a keresőfa ulajdonság. A fa minden csúcsa piros vag fekee. 5 A gökér fekee. A levelek fekeék. Minden piros csúcs mindké gereke fekee. Minden v csúcsra iga, hog a össes v-ből levélbe veeő úon ugananni fekee csúcs van. Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás / Példa 5 5 Megj.: A sokásos bináris fá kiegésíjük üres levelekkel. Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás /

Piros-fekee fák Jelölések F v : v gökerű résfa m(v): v magassága, a leghossabb v-ből levélbe veeő ú éleinek sáma fm(v): v fekee-magassága, a v-ből levélbe veeő össes úon a fekee csúcsok sáma, v- nem sámolva. (E minden úon egforma a. ulajdonság mia.) Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás / Tulajdonságok Állíás Eg piros-fekee fa minden v csúcsára eljesül m(v) fm(v) m(v). Bioníás. A leghossab levélbe veeő úon a fekeék sáma nem lehe öbb a élek sámánál fm(v) m(v).. pon mia a leghossabb úon a ponoknak legalább a fele fekee m(v) fm(v). Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás /

Tulajdonságok Állíás F v belső csúcsainak sáma b v fm(v). Bioníás. Indukcióval m(v)-re: m(v) = 0 fm(v) = 0, b v 0 Ha m(v) > 0, akkor legen, a ké fia. m() < m(v) és m() < m(v) fm(v) fm() fm(v) és fm(v) fm() fm(v) b v = b + b + b v ( fm() )+( fm() )+ ( fm(v) )+ = fm(v). Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás 5 / Tulajdonságok Állíás Ha eg piros-fekee fában n eleme árolunk, akkor a fa magassága log(n + ). Bioníás. Ha r a gökér b r = n. n = b r fm(r) log(n + ) fm(r) m(r) Téel KERES, MAX, MIN lépéssáma piros-fekee fában O(log n). Bioníás. Álalában minden keresőfában a lépéssám a fa magasságával arános O(l) = O(log n). Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás /

BESZÚR lépéssáma Ha a keresőfáknál hasnálaos besúrás hasnálnánk, akkor megsérülhene a piros-fekee ulajdonság. Forgaás s s F F F s F F F s Megj.: E a művele megarja a keresőfa ulajdonságo. Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás / BESZÚR Súrjuk be a új eleme a keresőfáknál megismer módon. Új belső csúcs kelekeik (gerekei csak üres fekee levelek): Ha a gökér, akkor legen fekee Ha nem gökér, akkor legen a apja, legen piros. () Ha fekee fekee-magasságok sehol nem válonak () Ha piros nem eljesül a piros-fekee ulajdonság ovábbi lépések kellenek. Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás /

BESZÚR () Mivel piros, nem gökér legen apja (fekee), esvére. (.) Ha piros ásíneük - pirosra Evvel a problémá ké sinel feljebb oluk, o folajuk a fa rendbeéelé. Kivéve, ha a gökér marad fekee fm() eggel nagobb les. Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás / BESZÚR (.) Ha fekee: (..) Ha és nem aonos oldali gerek forgaunk körül. Evvel a kövekeő esere veeük a problémá. Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás 0 /

BESZÚR (.) Ha fekee: (..) Ha és aonos oldali gerek forgaunk körül, majd ásíneünk. Evvel a gökér fekee-magassága nem váloik, és eljesül a piros-fekee ulajdonság. Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás / BESZÚR Téel A BESZÚR során (a) a lépéssám O(log n), (b) legfeljebb forgaás örénik. Bioníás. (a) piros eseben a (.) ponban sinel feljebb kerül a baj sinenkén konsans lépés O(log n). (b) Forgaás csak a (.) eseben örénik, de ekkor nincs felgűrűés, rögön kijavíjuk a fá. Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás /

TÖRÖL Hasonló módserek, de bonolulabb. Téel A TÖRÖL során (a) a lépéssám O(log n), (b) legfeljebb forgaás örénik. Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás / Példa BESZÚRásokra Súrjuk be eg üres fába sorban a,,,,, elemeke. (..) forgaás (..) ásín. (.) ásín. Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás /

Példa BESZÚRásokra Súrjuk be eg üres fába sorban a,,,,, elemeke. (..) forgaás (..) forgaás (..) ásín. Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás 5 / Példa BESZÚRásokra Súrjuk be eg üres fába sorban a,,,,, elemeke. (.) ásín. Kaona Gula Y. (BME SZIT) Algorimuselméle. előadás /