hierarchikus adatszerkezetek kósa márk 5. eloadás ...halasz/adatszerk-pti-2017/...hierarchikus...
TRANSCRIPT
![Page 1: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/1.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.1
5. eloadásHierarchikus adatszerkezetekFák, bináris fák, bejárások
Adatszerkezetek és algoritmusok eloadás2020. március 10.
Kósa Márk, Pánovics János,Szathmáry László és Halász Gábor
Debreceni EgyetemInformatikai Kar
![Page 2: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/2.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.2
Általános tudnivalókAjánlott irodalom:
• Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest, Clifford Stein:Új algoritmusok, Scolar Informatika, 2003.
• Donald E. Knuth: A számítógépprogramozás muvészete1. (Alapveto algoritmusok), Muszaki Könyvkiadó, 1994.
• Donald E. Knuth: A számítógépprogramozás muvészete3. (Keresés és rendezés), Muszaki Könyvkiadó, 1994.
• Seymour Lipschutz: Adatszerkezetek,Panem-McGraw-Hill, Budapest, 1993.
• Rónyai Lajos, Ivanyos Gábor, Szabó Réka: Algoritmusok,Typotex, Budapest, 2008.
Félév teljesítésének feltételei:• Gyakorlati aláírás
– 2 ZH• Írásbeli vizsga, aminek az értékelésébe ...
További részletek:http://hallg.inf.unideb.hu/~halasz
![Page 3: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/3.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.3
Hierarchikus adatszerkezetek
Hierarchikus adatszerkezet
A szekvenciális adatszerkezet általánosítása:• minden adatelemének – egyet kivéve –• pontosan egy megelozoje,• és tetszoleges számú (akár 0) rákövetkezoje lehet.
Hierarchikus adatszerkezetek:
• fa• hierarchikus lista
![Page 4: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/4.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.4
A fa adatszerkezetHomogén, dinamikus, hierarchikus adatszerkezet.Fa adatszerkezetekkel kapcsolatos fogalmak:
• csúcs, csomópont• gyökérelem• levélelem• közbenso elem• él• út• részfa• szint• magasság
![Page 5: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/5.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.4
A fa adatszerkezetHomogén, dinamikus, hierarchikus adatszerkezet.Fa adatszerkezetekkel kapcsolatos fogalmak:
• csúcs, csomópont• gyökérelem• levélelem• közbenso elem• él• út• részfa• szint• magasság
![Page 6: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/6.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.4
A fa adatszerkezetHomogén, dinamikus, hierarchikus adatszerkezet.Fa adatszerkezetekkel kapcsolatos fogalmak:
• csúcs, csomópont• gyökérelem• levélelem• közbenso elem• él• út• részfa• szint• magasság
![Page 7: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/7.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.4
A fa adatszerkezetHomogén, dinamikus, hierarchikus adatszerkezet.Fa adatszerkezetekkel kapcsolatos fogalmak:
• csúcs, csomópont• gyökérelem• levélelem• közbenso elem• él• út• részfa• szint• magasság
![Page 8: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/8.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.4
A fa adatszerkezetHomogén, dinamikus, hierarchikus adatszerkezet.Fa adatszerkezetekkel kapcsolatos fogalmak:
• csúcs, csomópont• gyökérelem• levélelem• közbenso elem• él• út• részfa• szint• magasság
![Page 9: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/9.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.4
A fa adatszerkezetHomogén, dinamikus, hierarchikus adatszerkezet.Fa adatszerkezetekkel kapcsolatos fogalmak:
• csúcs, csomópont• gyökérelem• levélelem• közbenso elem• él• út• részfa• szint• magasság
![Page 10: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/10.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.4
A fa adatszerkezetHomogén, dinamikus, hierarchikus adatszerkezet.Fa adatszerkezetekkel kapcsolatos fogalmak:
• csúcs, csomópont• gyökérelem• levélelem• közbenso elem• él• út• részfa• szint• magasság
![Page 11: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/11.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.4
A fa adatszerkezetHomogén, dinamikus, hierarchikus adatszerkezet.Fa adatszerkezetekkel kapcsolatos fogalmak:
• csúcs, csomópont• gyökérelem• levélelem• közbenso elem• él• út• részfa• szint• magasság
![Page 12: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/12.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.4
A fa adatszerkezetHomogén, dinamikus, hierarchikus adatszerkezet.Fa adatszerkezetekkel kapcsolatos fogalmak:
• csúcs, csomópont• gyökérelem• levélelem• közbenso elem• él• út• részfa• szint• magasság
0.
1.
2.
3.
![Page 13: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/13.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.4
A fa adatszerkezetHomogén, dinamikus, hierarchikus adatszerkezet.Fa adatszerkezetekkel kapcsolatos fogalmak:
• csúcs, csomópont• gyökérelem• levélelem• közbenso elem• él• út• részfa• szint• magasság
0.
1.
2.
3.
4
![Page 14: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/14.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.5
Rendezetlen és rendezett fákRendezetlen fáknál nem lényeges az ugyanazon csúcsbólkiinduló élek sorrendje, rendezett fáknál viszont igen.
a
bc
d ef
g
a
b c
def
g
Az ábrán látható két fa ekvivalens egymással, ha eltekintünkaz ugyanazon csúcsokból kiinduló élek sorrendjétol (azaz harendezetlen fáknak tekintjük oket).
Mivel az informatikában a rendezett adatszerkezetek játszanakfontos szerepet, a továbbiakban rendezett fákkal foglalkozunk.
![Page 15: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/15.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.6
Bináris fa
Bináris fa
Olyan fa, melyben minden adatelemnek legfeljebb kétrákövetkezoje van.
Szigorú értelemben vett bináris fa
Szigorú értelemben vett bináris fáról beszélünk, ha a binárisfában minden adatelemnek 0 vagy 2 rákövetkezoje van.
Rendezett bináris fa
Rendezett bináris fa elemeire értelmezhetok a következofogalmak:• bal/jobb oldali rákövetkezo• bal/jobb oldali részfa
A továbbiakban bináris fa alatt – hacsak mást nem mondunk –rendezett bináris fát értünk.
![Page 16: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/16.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.7
Nem bináris fa rendezett bináris fává alakítása
Minden nem bináris fa reprezentálható rendezett bináris fával.
Tetszoleges fa binarizálásának algoritmusa
1 Legyen a bináris fa gyökere a nem bináris fa gyökere.2 A bináris fa egy tetszoleges elemének bal oldali
rákövetkezoje legyen a nem bináris fa megfelelo eleménekbal oldali (elso) rákövetkezoje.
3 A bináris fa egy tetszoleges elemének jobb oldalirákövetkezoje legyen a nem bináris fa megfelelo eleménekkövetkezo (azonos szülohöz tartozó) testvércsúcsa.
a
b c d
e f g h
a
b c d
e f g h
![Page 17: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/17.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.8
Bináris fával végezheto muveletek
Bináris fával végezheto muveletek
• Létrehozás: üres fa.• Bovítés: egy elemmel vagy egy részfával, általában
levélelemnél.• Törlés: részfát vagy egy elemet, utóbbi esetben a fát a
legtöbb esetben újra kell szervezni (hogy továbbra is famaradjon).
• Csere: megengedett.• Rendezés: nincs.• Keresés, elérés és feldolgozás: a bejárás algoritmusa
alapján.• Bejárás: szokás szerint olyan algoritmus, amelynek
segítségével a bináris fa elemeit leképezzük egy sorra(preorder, inorder vagy postorder módon).
![Page 18: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/18.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.9
Bináris fa bejárási algoritmusai
Preorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).3 Járjuk be a gyökérelem bal oldali részfáját preorder
módon.4 Járjuk be a gyökérelem jobb oldali részfáját preorder
módon.
a
b
c d
e
f
g h
i
![Page 19: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/19.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.9
Bináris fa bejárási algoritmusai
Preorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).3 Járjuk be a gyökérelem bal oldali részfáját preorder
módon.4 Járjuk be a gyökérelem jobb oldali részfáját preorder
módon.
a
b
c d
e
f
g h
i
![Page 20: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/20.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.9
Bináris fa bejárási algoritmusai
Preorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).3 Járjuk be a gyökérelem bal oldali részfáját preorder
módon.4 Járjuk be a gyökérelem jobb oldali részfáját preorder
módon.
a
b
c d
e
f
g h
i
aa
![Page 21: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/21.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.9
Bináris fa bejárási algoritmusai
Preorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).3 Járjuk be a gyökérelem bal oldali részfáját preorder
módon.4 Járjuk be a gyökérelem jobb oldali részfáját preorder
módon.
a
b
c d
e
f
g h
i
a ba
b
![Page 22: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/22.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.9
Bináris fa bejárási algoritmusai
Preorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).3 Járjuk be a gyökérelem bal oldali részfáját preorder
módon.4 Járjuk be a gyökérelem jobb oldali részfáját preorder
módon.
a
b
c d
e
f
g h
i
a b ca
b
c
![Page 23: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/23.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.9
Bináris fa bejárási algoritmusai
Preorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).3 Járjuk be a gyökérelem bal oldali részfáját preorder
módon.4 Járjuk be a gyökérelem jobb oldali részfáját preorder
módon.
a
b
c d
e
f
g h
i
a b c da
b
c d
![Page 24: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/24.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.9
Bináris fa bejárási algoritmusai
Preorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).3 Járjuk be a gyökérelem bal oldali részfáját preorder
módon.4 Járjuk be a gyökérelem jobb oldali részfáját preorder
módon.
a
b
c d
e
f
g h
i
a b c d ea
b
c d
e
![Page 25: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/25.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.9
Bináris fa bejárási algoritmusai
Preorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).3 Járjuk be a gyökérelem bal oldali részfáját preorder
módon.4 Járjuk be a gyökérelem jobb oldali részfáját preorder
módon.
a
b
c d
e
f
g h
i
a b c d e ia
b
c d
e
i
![Page 26: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/26.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.9
Bináris fa bejárási algoritmusai
Preorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).3 Járjuk be a gyökérelem bal oldali részfáját preorder
módon.4 Járjuk be a gyökérelem jobb oldali részfáját preorder
módon.
a
b
c d
e
f
g h
i
a b c d e i ga
b
c d
e
i
g
![Page 27: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/27.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.9
Bináris fa bejárási algoritmusai
Preorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).3 Járjuk be a gyökérelem bal oldali részfáját preorder
módon.4 Járjuk be a gyökérelem jobb oldali részfáját preorder
módon.
a
b
c d
e
f
g h
i
a b c d e i g ha
b
c d
e
i
g h
![Page 28: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/28.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.9
Bináris fa bejárási algoritmusai
Preorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).3 Járjuk be a gyökérelem bal oldali részfáját preorder
módon.4 Járjuk be a gyökérelem jobb oldali részfáját preorder
módon.
a
b
c d
e
f
g h
i
a b c d e i g hi fa
b
c d
e
i
g h
f
![Page 29: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/29.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
![Page 30: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/30.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
![Page 31: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/31.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
![Page 32: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/32.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
![Page 33: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/33.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
c
c
![Page 34: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/34.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
c b
c
b
![Page 35: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/35.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
c b d
c
b
d
![Page 36: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/36.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
c b d a
c
b
d
a
![Page 37: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/37.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
c b d a
c
b
d
a
![Page 38: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/38.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
c b d a
c
b
d
a
![Page 39: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/39.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
c b d a g
c
b
d
a
g
![Page 40: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/40.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
c b d a g i
c
b
d
a
g
i
![Page 41: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/41.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
c b d a g i h
c
b
d
a
g
i
h
![Page 42: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/42.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
c b d a g i h e
c
b
d
a
g
i
h
e
![Page 43: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/43.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.10
Bináris fa bejárási algoritmusai
Inorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját inorder módon.3 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).4 Járjuk be a gyökérelem jobb oldali részfáját inorder
módon.
a
b
c d
e
f
g h
i
c b d a g i h e f
c
b
d
a
g
i
h
e
f
![Page 44: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/44.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
![Page 45: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/45.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
![Page 46: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/46.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
![Page 47: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/47.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
![Page 48: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/48.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
c
c
![Page 49: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/49.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
c d
c d
![Page 50: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/50.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
c d b
c d
b
![Page 51: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/51.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
c d b
c d
b
![Page 52: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/52.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
c d b
c d
b
![Page 53: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/53.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
c d b g
c d
b
g
![Page 54: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/54.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
c d b g h
c d
b
g h
![Page 55: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/55.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
c d b g h i
c d
b
g h
i
![Page 56: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/56.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
c d b g h i f
c d
b
g h
i f
![Page 57: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/57.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
c d b g h i f e
c d
b
g h
i f
e
![Page 58: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/58.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.11
Bináris fa bejárási algoritmusai
Postorder bejárás algoritmusa
1 Ha a bejárandó fa üres, az algoritmus véget ér.2 Járjuk be a gyökérelem bal oldali részfáját postorder
módon.3 Járjuk be a gyökérelem jobb oldali részfáját postorder
módon.4 Dolgozzuk fel a gyökérelemet (más szavakkal: helyezzük
a gyökérelemet a sor végére).
a
b
c d
e
f
g h
i
c d b g h i f e a
c d
b
g h
i f
e
a
![Page 59: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/59.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.12
Bináris fa folytonos reprezentációjaHárom vektor segítségével, ahol a vektorok azonos indexuelemei a következo információkat tárolják:
• az ADAT vektorban az adatelem értékét,• a BAL vektorban a bal oldali rákövetkezo vektorbeli
indexét,• a JOBB vektorban a jobb oldali rákövetkezo vektorbeli
indexét.
Általában a fa gyökérelemét e vektorok elso eleme írja le.
a
b
c d
e
f
g h
i
ADAT BAL JOBB1. a 2 52. b 3 43. c 0 04. d 0 05. e 6 96. i 7 87. g 0 08. h 0 09. f 0 0
![Page 60: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/60.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.13
Bináris fa szétszórt reprezentációja
A faelemek adatrésze az adatelem értékét tartalmazza, amutatórész pedig két mutatót: egyet, amely a bal oldalirákövetkezot leíró faelemet címzi, és egy másikat, amely a jobboldali rákövetkezot leíró faelemet címzi. A gyökérelemhez (ésrajta keresztül az adatszerkezet többi eleméhez) a „gyökér”mutató segítségével tudunk hozzáférni.
a
b
c d
e
f
g h
i
gyökérmutató
a
b e
nil c nil nil d nil i nil f nil
nil g nil nil h nil
![Page 61: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/61.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.14
Kifejezésfák és a bejárások kapcsolata
Kifejezésfa
A kifejezésfa olyan fa, melyben a levélelemek egy kifejezésoperandusait, a nem levél elemek pedig ugyanazon kifejezésoperátorait tartalmazzák.
+
/ ∗
a b − c
d e
prefix: + / a b ∗ − d e c
infix: a / b + d − e ∗ c
postfix: a b / d e − c ∗ +
Aszerint, hogy a kifejezésfát – a korábban említettek közül –melyik bejárási algoritmussal járjuk be, kapjuk a kifejezés
prefix, infix és postfix alakját.
![Page 62: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/62.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.15
Kifejezésfák és a bejárások kapcsolata
A prefix és a postfix alak egyértelmu, az infix nem az (dezárójelek használatával azzá teheto).
Példa
Az alábbi két kifejezésfát inorder módon bejárva ugyanazt azinfix kifejezést kapjuk:
+
/ ∗
a b − c
d e
∗
+ c
/ −
a b d e
a / b + d − e ∗ c
Zárójelezést alkalmazva:
(a / b) + ((d − e) ∗ c) ((a / b) + (d − e)) ∗ c
![Page 63: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/63.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.16
Bináris fa implementálása
Üres fa létrehozása
typedef struct faelem {tipus adat;struct faelem *bal;struct faelem *jobb;
} FAELEM;
FAELEM *gyoker = NULL;
Bináris fa bejárása inorder stratégiával
void inorder_bejaras(FAELEM *csucs){
if (csucs != NULL){
inorder_bejaras(csucs->bal);feldolgoz(csucs);inorder_bejaras(csucs->jobb);
}}
![Page 64: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/64.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.17
A kupac definíciója
Kupac
A kupac olyan fa, amely rendelkezik a kupac tulajdonsággal:• a gyökérelemet kivéve bármely adatelemének a kulcsa
kisebb vagy egyenlo az adatelem szülojének a kulcsánál.Az ilyen fában a legnagyobb kulcsú elem mindig a gyökérelem,ezért max-kupacnak is nevezzük. Ha megfordítjuk a relációt,akkor a gyökérelem lesz a legkisebb kulcsú elem, ekkormin-kupacot kapunk.
Megjegyzés
A kupac egyes elemeiben a gyermek csomópontok számáranézve általában nincs megszorítás. A kupac adatszerkezetnekrengeteg változata létezik attól függoen, hogy hány gyermekcsomópontja lehet az egyes elemeknek.
![Page 65: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/65.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.18
Bináris kupacBináris kupac
A bináris kupac olyan bináris fa, amely a kupac tulajdonságonkívül az alak tulajdonsággal is rendelkezik: a fa teljes binárisfa, azaz minimális magasságú, és ha a legalsó szint nincsteljesen kitöltve, akkor azon a szinten a csomópontok balróljobbra kerülnek feltöltésre.
Megjegyzés
A kupac tulajdonság nem határozza meg a gyermekcsomópontok sorrendjét, ezért azok tetszolegesenfelcserélhetok, hacsak meg nem sértik az alak tulajdonságot.
Példa bináris max-kupacra: 50
19 36
17 3 25 1
2 7
![Page 66: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/66.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.19
EllenpéldákSérül a kupac tulajdonság:
50
19 36
30 3 25 1
2 7
Sérül az alak tulajdonság:
50
19 36
17 3 25 1
2 7 22
![Page 67: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/67.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.20
A bináris kupac reprezentációjaAz alak tulajdonság miatt a bináris kupacot leggyakrabban egytömbbel reprezentáljuk. Nincs szükség mutatókra, mivelbármely adatelem szülojének és gyermekeinek az indexeegyszeru számtani muveletekkel meghatározható az adatelemindexébol. Ha a tömb indexelése 1-rol indul, akkor az Ai elem• gyermekei az A2i és az A2i+1,• szüloje az Ab i
2c elem lesz.50
19 36
17 3 25 1
2 7
50
1
19
2
36
3
17
4
3
5
25
6
1
7
2
8
7
9
![Page 68: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/68.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.21
Beszúrás bináris kupacba
• beszúr: 2• beszúr: 30• beszúr: 60
50
19 36
17 3 25 1
2 7
![Page 69: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/69.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.21
Beszúrás bináris kupacba
• beszúr: 2• beszúr: 30• beszúr: 60
50
19 36
17 3 25 1
2 7
![Page 70: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/70.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.21
Beszúrás bináris kupacba
• beszúr: 2• beszúr: 30• beszúr: 60
50
19 36
17 3 25 1
2 7 2
![Page 71: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/71.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.21
Beszúrás bináris kupacba
• beszúr: 2• beszúr: 30• beszúr: 60
50
19 36
17 3 25 1
2 7 2
![Page 72: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/72.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.21
Beszúrás bináris kupacba
• beszúr: 2• beszúr: 30• beszúr: 60
50
19 36
17 3 25 1
2 7 2
![Page 73: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/73.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.21
Beszúrás bináris kupacba
• beszúr: 2• beszúr: 30• beszúr: 60
50
19 36
17 3 25 1
2 7 2 30
![Page 74: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/74.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.21
Beszúrás bináris kupacba
• beszúr: 2• beszúr: 30• beszúr: 60
50
19 36
17 30 25 1
2 7 2 3
![Page 75: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/75.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.21
Beszúrás bináris kupacba
• beszúr: 2• beszúr: 30• beszúr: 60
50
30 36
17 19 25 1
2 7 2 3
![Page 76: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/76.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.21
Beszúrás bináris kupacba
• beszúr: 2• beszúr: 30• beszúr: 60
50
30 36
17 19 25 1
2 7 2 3
![Page 77: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/77.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.21
Beszúrás bináris kupacba
• beszúr: 2• beszúr: 30• beszúr: 60
50
30 36
17 19 25 1
2 7 2 3
![Page 78: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/78.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.21
Beszúrás bináris kupacba
• beszúr: 2• beszúr: 30• beszúr: 60
50
30 36
17 19 25 1
2 7 2 3 60
![Page 79: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/79.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.21
Beszúrás bináris kupacba
• beszúr: 2• beszúr: 30• beszúr: 60
50
30 36
17 19 60 1
2 7 2 3 25
![Page 80: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/80.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.21
Beszúrás bináris kupacba
• beszúr: 2• beszúr: 30• beszúr: 60
50
30 60
17 19 36 1
2 7 2 3 25
![Page 81: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/81.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.21
Beszúrás bináris kupacba
• beszúr: 2• beszúr: 30• beszúr: 60
60
30 50
17 19 36 1
2 7 2 3 25
![Page 82: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/82.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.22
Kupacosítás
• Legyen i az A tömb egy olyan elmének az indexe,amelyre:
– Az A[i] elem baloldali és jobboldali részfái kupacok.– Elképzelheto viszont, hogy A[i] kisebb mint a gyerekei,
vagyis sérül a kupac tulajdonság.• A kupacosítás során az i . pozíción lévo bináris részfából
kupacot csinálunk úgy, hogy az A[i] elemet lefelémozgatjuk a kupacban.
![Page 83: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/83.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.23
Kupacosítás
• A kupac tulajdonság sérül az 1-es indexu elem esetében.A 2-es és 3-as indexu részfák viszont kupacok.
• SZITÁL(K,1,n)
28
30 50
17 19 36 1
2 7 2 3 25
![Page 84: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/84.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.23
Kupacosítás
• A kupac tulajdonság sérül az 1-es indexu elem esetében.A 2-es és 3-as indexu részfák viszont kupacok.
• SZITÁL(K,1,n)
28
30 50
17 19 36 1
2 7 2 3 25
![Page 85: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/85.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.23
Kupacosítás
• A kupac tulajdonság sérül az 1-es indexu elem esetében.A 2-es és 3-as indexu részfák viszont kupacok.
• SZITÁL(K,1,n)
28
30 50
17 19 36 1
2 7 2 3 25
![Page 86: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/86.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.23
Kupacosítás
• A kupac tulajdonság sérül az 1-es indexu elem esetében.A 2-es és 3-as indexu részfák viszont kupacok.
• SZITÁL(K,1,n)
50
30 28
17 19 36 1
2 7 2 3 25
![Page 87: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/87.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.23
Kupacosítás
• A kupac tulajdonság sérül az 1-es indexu elem esetében.A 2-es és 3-as indexu részfák viszont kupacok.
• SZITÁL(K,1,n)
50
30 28
17 19 36 1
2 7 2 3 25
![Page 88: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/88.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.23
Kupacosítás
• A kupac tulajdonság sérül az 1-es indexu elem esetében.A 2-es és 3-as indexu részfák viszont kupacok.
• SZITÁL(K,1,n)
50
30 36
17 19 28 1
2 7 2 3 25
![Page 89: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/89.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.24
Maximális elem törlése (#1)
• A legnagyobb elem a kupac tetején található. Ez a kupacgyökere.
• Ezt kitörölhetjük, s felhozzuk a helyére az egyik gyerekét.• Az üres hely lefelé mozog a fában.• Az üres hely bárhová kerülhet az utolsó szinten.• Az így létrejövo fa utolsó szintjén az elemek jó eséllyel
nem lesznek balra rendezettek, vagyis sérül az alaktulajdonság.
![Page 90: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/90.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.25
Maximális elem törlése (#1)
50
30 36
17 19 28 18
2 7 2 3 25 22 16
![Page 91: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/91.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.25
Maximális elem törlése (#1)
30 36
17 19 28 18
2 7 2 3 25 22 16
![Page 92: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/92.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.25
Maximális elem törlése (#1)
30 36
17 19 28 18
2 7 2 3 25 22 16
![Page 93: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/93.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.25
Maximális elem törlése (#1)
36
30
17 19 28 18
2 7 2 3 25 22 16
![Page 94: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/94.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.25
Maximális elem törlése (#1)
36
30
17 19 28 18
2 7 2 3 25 22 16
![Page 95: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/95.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.25
Maximális elem törlése (#1)
36
30 28
17 19 18
2 7 2 3 25 22 16
![Page 96: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/96.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.25
Maximális elem törlése (#1)
36
30 28
17 19 18
2 7 2 3 25 22 16
![Page 97: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/97.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.25
Maximális elem törlése (#1)
36
30 28
17 19 25 18
2 7 2 3 22 16
![Page 98: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/98.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.25
Maximális elem törlése (#1)
36
30 28
17 19 25 18
2 7 2 3 22 16
Nem teljesül az alak tulajdonság.
![Page 99: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/99.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.26
Maximális elem törlése (#2)
50
30 36
17 19 28 18
2 7 2 3 25 22 16
• Írjuk felül a kupac tetején lévo elemet a kupac utolsóelemével.
• SZITÁL(K,1,n)
![Page 100: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/100.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.26
Maximális elem törlése (#2)
50
30 36
17 19 28 18
2 7 2 3 25 22 16
• Írjuk felül a kupac tetején lévo elemet a kupac utolsóelemével.
• SZITÁL(K,1,n)
![Page 101: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/101.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.26
Maximális elem törlése (#2)
30 36
17 19 28 18
2 7 2 3 25 22 16
• Írjuk felül a kupac tetején lévo elemet a kupac utolsóelemével.
• SZITÁL(K,1,n)
![Page 102: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/102.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.26
Maximális elem törlése (#2)
16
30 36
17 19 28 18
2 7 2 3 25 22
• Írjuk felül a kupac tetején lévo elemet a kupac utolsóelemével.
• SZITÁL(K,1,n)
![Page 103: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/103.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.26
Maximális elem törlése (#2)
16
30 36
17 19 28 18
2 7 2 3 25 22
• Írjuk felül a kupac tetején lévo elemet a kupac utolsóelemével.
• SZITÁL(K,1,n)
![Page 104: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/104.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.26
Maximális elem törlése (#2)
16
30 36
17 19 28 18
2 7 2 3 25 22
• Írjuk felül a kupac tetején lévo elemet a kupac utolsóelemével.
• SZITÁL(K,1,n)
![Page 105: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/105.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.26
Maximális elem törlése (#2)
16
30 36
17 19 28 18
2 7 2 3 25 22
• Írjuk felül a kupac tetején lévo elemet a kupac utolsóelemével.
• SZITÁL(K,1,n)
![Page 106: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/106.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.26
Maximális elem törlése (#2)
16
30 36
17 19 28 18
2 7 2 3 25 22
• Írjuk felül a kupac tetején lévo elemet a kupac utolsóelemével.
• SZITÁL(K,1,n)
![Page 107: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/107.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.26
Maximális elem törlése (#2)
36
30 16
17 19 28 18
2 7 2 3 25 22
• Írjuk felül a kupac tetején lévo elemet a kupac utolsóelemével.
• SZITÁL(K,1,n)
![Page 108: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/108.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.26
Maximális elem törlése (#2)
36
30 16
17 19 28 18
2 7 2 3 25 22
• Írjuk felül a kupac tetején lévo elemet a kupac utolsóelemével.
• SZITÁL(K,1,n)
![Page 109: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/109.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.26
Maximális elem törlése (#2)
36
30 28
17 19 16 18
2 7 2 3 25 22
• Írjuk felül a kupac tetején lévo elemet a kupac utolsóelemével.
• SZITÁL(K,1,n)
![Page 110: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/110.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.26
Maximális elem törlése (#2)
36
30 28
17 19 16 18
2 7 2 3 25 22
• Írjuk felül a kupac tetején lévo elemet a kupac utolsóelemével.
• SZITÁL(K,1,n)
![Page 111: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/111.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.26
Maximális elem törlése (#2)
36
30 28
17 19 25 18
2 7 2 3 16 22
• Írjuk felül a kupac tetején lévo elemet a kupac utolsóelemével.
• SZITÁL(K,1,n)
![Page 112: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/112.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.27
Kupac építése
• A legalsó szinten kezdünk s onnan haladunk felfelé,jobbról balra haladva.
• Kezdetben minden levélelem kupac.
1: procedure KUPAC-ÉPÍTÉSE(A)2: for i ← bméret(A)/2c downto 1 do3: SZITÁL(A, i , méret(A))4: end for5: end procedure
17
2 50
7 19 25 1
36 3
![Page 113: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/113.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.27
Kupac építése
• A legalsó szinten kezdünk s onnan haladunk felfelé,jobbról balra haladva.
• Kezdetben minden levélelem kupac.
1: procedure KUPAC-ÉPÍTÉSE(A)2: for i ← bméret(A)/2c downto 1 do3: SZITÁL(A, i , méret(A))4: end for5: end procedure
17
2 50
7 19 25 1
36 3
![Page 114: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/114.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.27
Kupac építése
• A legalsó szinten kezdünk s onnan haladunk felfelé,jobbról balra haladva.
• Kezdetben minden levélelem kupac.
1: procedure KUPAC-ÉPÍTÉSE(A)2: for i ← bméret(A)/2c downto 1 do3: SZITÁL(A, i , méret(A))4: end for5: end procedure
17
2 50
7 19 25 1
36 3
![Page 115: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/115.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.27
Kupac építése
• A legalsó szinten kezdünk s onnan haladunk felfelé,jobbról balra haladva.
• Kezdetben minden levélelem kupac.
1: procedure KUPAC-ÉPÍTÉSE(A)2: for i ← bméret(A)/2c downto 1 do3: SZITÁL(A, i , méret(A))4: end for5: end procedure
17
2 50
36 19 25 1
7 3
![Page 116: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/116.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.27
Kupac építése
• A legalsó szinten kezdünk s onnan haladunk felfelé,jobbról balra haladva.
• Kezdetben minden levélelem kupac.
1: procedure KUPAC-ÉPÍTÉSE(A)2: for i ← bméret(A)/2c downto 1 do3: SZITÁL(A, i , méret(A))4: end for5: end procedure
17
2 50
36 19 25 1
7 3
![Page 117: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/117.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.27
Kupac építése
• A legalsó szinten kezdünk s onnan haladunk felfelé,jobbról balra haladva.
• Kezdetben minden levélelem kupac.
1: procedure KUPAC-ÉPÍTÉSE(A)2: for i ← bméret(A)/2c downto 1 do3: SZITÁL(A, i , méret(A))4: end for5: end procedure
17
2 50
36 19 25 1
7 3
![Page 118: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/118.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.27
Kupac építése
• A legalsó szinten kezdünk s onnan haladunk felfelé,jobbról balra haladva.
• Kezdetben minden levélelem kupac.
1: procedure KUPAC-ÉPÍTÉSE(A)2: for i ← bméret(A)/2c downto 1 do3: SZITÁL(A, i , méret(A))4: end for5: end procedure
17
2 50
36 19 25 1
7 3
![Page 119: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/119.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.27
Kupac építése
• A legalsó szinten kezdünk s onnan haladunk felfelé,jobbról balra haladva.
• Kezdetben minden levélelem kupac.
1: procedure KUPAC-ÉPÍTÉSE(A)2: for i ← bméret(A)/2c downto 1 do3: SZITÁL(A, i , méret(A))4: end for5: end procedure
17
36 50
2 19 25 1
7 3
![Page 120: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/120.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.27
Kupac építése
• A legalsó szinten kezdünk s onnan haladunk felfelé,jobbról balra haladva.
• Kezdetben minden levélelem kupac.
1: procedure KUPAC-ÉPÍTÉSE(A)2: for i ← bméret(A)/2c downto 1 do3: SZITÁL(A, i , méret(A))4: end for5: end procedure
17
36 50
7 19 25 1
2 3
![Page 121: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/121.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.27
Kupac építése
• A legalsó szinten kezdünk s onnan haladunk felfelé,jobbról balra haladva.
• Kezdetben minden levélelem kupac.
1: procedure KUPAC-ÉPÍTÉSE(A)2: for i ← bméret(A)/2c downto 1 do3: SZITÁL(A, i , méret(A))4: end for5: end procedure
17
36 50
7 19 25 1
2 3
![Page 122: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/122.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.27
Kupac építése
• A legalsó szinten kezdünk s onnan haladunk felfelé,jobbról balra haladva.
• Kezdetben minden levélelem kupac.
1: procedure KUPAC-ÉPÍTÉSE(A)2: for i ← bméret(A)/2c downto 1 do3: SZITÁL(A, i , méret(A))4: end for5: end procedure
50
36 17
7 19 25 1
2 3
![Page 123: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/123.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.27
Kupac építése
• A legalsó szinten kezdünk s onnan haladunk felfelé,jobbról balra haladva.
• Kezdetben minden levélelem kupac.
1: procedure KUPAC-ÉPÍTÉSE(A)2: for i ← bméret(A)/2c downto 1 do3: SZITÁL(A, i , méret(A))4: end for5: end procedure
50
36 25
7 19 17 1
2 3
![Page 124: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/124.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.28
Kupacrendezés
A kupac segítségével viszonylag egyszeruen implementálhatóegy olyan helyben rendezo algoritmus, amely általánosesetben majdnem olyan gyors, mint a gyorsrendezés, alegrosszabb esetben viszont gyorsabb annál.
Az ötlet
Eloször is bináris max-kupaccá alakítjuk a rendezendo tömböt.Ezután kicseréljük a tömb elso (legnagyobb) elemét azutolsóval, amely így a helyére kerül. Helyreállítjuk a binárismax-kupacot az utolsó elem elhagyásával kapott résztömbben,majd kicseréljük az elso elemet az utolsó elottivel, és ígytovább...
Megjegyzés
Az algoritmus alatt a tömb eleje tartalmazza a kupacot, a végepedig a már rendezett résztömböt.
![Page 125: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/125.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.29
A kupacrendezés algoritmusa
1: procedure KUPACRENDEZÉS(A)2: KUPACOSÍT(A)3: vég← méret(A)4: while vég > 1 do5: CSERÉL(A, 1, vég)6: vég← vég− 17: SZITÁL(A, 1, vég)8: end while9: end procedure
1: procedure KUPACOSÍT(A)2: start ← bméret(A)/2c
. start kezdetben az utolsó nem levél elem indexe3: while start ≥ 1 do4: SZITÁL(A, start , méret(A))5: start ← start − 16: end while7: end procedure
![Page 126: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/126.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.30
A szitálás algoritmusa
1: procedure SZITÁL(A, bal , jobb)2: gyökér← bal3: while gyökér ∗ 2 ≤ jobb do4: gyerek ← gyökér ∗ 2
. gyerek a gyökér bal oldali gyermeke5: csere← gyökér
. csere a gyökér azon gyermeke, amelyikkel ki kell ot cserélni6: if A[csere] < A[gyerek ] then7: csere← gyerek8: end if9: if gyerek < jobb and A[csere] < A[gyerek + 1] then
10: csere← gyerek + 111: end if12: if csere 6= gyökér then13: CSERÉL(A, gyökér, csere)14: gyökér← csere15: else16: return17: end if18: end while19: end procedure
![Page 127: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/127.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.31
Példa kupacrendezésreKupacosítás:
17
2 50
7 19 25 1
36 3
17 2 50 7 19 25 1 36 3
![Page 128: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/128.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.31
Példa kupacrendezésreKupacosítás:
17
2 50
36 19 25 1
7 3
17 2 50 36 19 25 1 7 3
![Page 129: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/129.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.31
Példa kupacrendezésreKupacosítás:
17
2 50
36 19 25 1
7 3
17 2 50 36 19 25 1 7 3
![Page 130: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/130.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.31
Példa kupacrendezésreKupacosítás:
17
36 50
2 19 25 1
7 3
17 36 50 2 19 25 1 7 3
![Page 131: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/131.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.31
Példa kupacrendezésreKupacosítás:
17
36 50
7 19 25 1
2 3
17 36 50 7 19 25 1 2 3
![Page 132: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/132.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.31
Példa kupacrendezésreKupacosítás:
50
36 17
7 19 25 1
2 3
50 36 17 7 19 25 1 2 3
![Page 133: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/133.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.31
Példa kupacrendezésreKupacosítás:
50
36 25
7 19 17 1
2 3
50 36 25 7 19 17 1 2 3
![Page 134: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/134.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
50
36 25
7 19 17 1
2 3
50 36 25 7 19 17 1 2 3
![Page 135: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/135.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
3
36 25
7 19 17 1
2
3 36 25 7 19 17 1 2 50
![Page 136: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/136.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
36
3 25
7 19 17 1
2
36 3 25 7 19 17 1 2 50
![Page 137: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/137.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
36
19 25
7 3 17 1
2
36 19 25 7 3 17 1 2 50
![Page 138: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/138.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
2
19 25
7 3 17 1
2 19 25 7 3 17 1 36 50
![Page 139: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/139.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
25
19 2
7 3 17 1
25 19 2 7 3 17 1 36 50
![Page 140: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/140.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
25
19 17
7 3 2 1
25 19 17 7 3 2 1 36 50
![Page 141: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/141.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
1
19 17
7 3 2
1 19 17 7 3 2 25 36 50
![Page 142: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/142.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
19
1 17
7 3 2
19 1 17 7 3 2 25 36 50
![Page 143: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/143.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
19
7 17
1 3 2
19 7 17 1 3 2 25 36 50
![Page 144: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/144.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
2
7 17
1 3
2 7 17 1 3 19 25 36 50
![Page 145: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/145.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
17
7 2
1 3
17 7 2 1 3 19 25 36 50
![Page 146: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/146.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
3
7 2
1
3 7 2 1 17 19 25 36 50
![Page 147: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/147.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
7
3 2
1
7 3 2 1 17 19 25 36 50
![Page 148: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/148.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
7
3 2
1
7 3 2 1 17 19 25 36 50
![Page 149: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/149.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
1
3 2
1 3 2 7 17 19 25 36 50
![Page 150: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/150.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
3
1 2
3 1 2 7 17 19 25 36 50
![Page 151: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/151.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
2
1
2 1 3 7 17 19 25 36 50
![Page 152: Hierarchikus adatszerkezetek Kósa Márk 5. eloadás ...halasz/Adatszerk-PTI-2017/...Hierarchikus adatszerkezetek Kósa Márk Pánovics János Szathmáry László Halász Gábor Hierarchikus](https://reader033.vdocuments.net/reader033/viewer/2022053001/5f05a4f57e708231d413fceb/html5/thumbnails/152.jpg)
Hierarchikusadatszerkezetek
Kósa MárkPánovics János
Szathmáry LászlóHalász Gábor
Hierarchikusadatszerkezetekek
A fa adatszerkezetBináris fa
Bejárási algoritmusok
Preorder bejárás
Inorder bejárás
Postorder bejárás
Reprezentáció
Kifejezésfák
Implementáció
KupacKupacrendezés
5.32
Példa kupacrendezésreRendezés:
1
1 2 3 7 17 19 25 36 50