Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Számoljuk meg rekurzív függvénnyel egy bináris fa leveleit!

Hasonló előadás


Az előadások a következő témára: "Számoljuk meg rekurzív függvénnyel egy bináris fa leveleit!"— Előadás másolata:

1 Számoljuk meg rekurzív függvénnyel egy bináris fa leveleit!

2 Rekurzív függvény Olyan függvény, mely meghívja önmagát vagy egy másik függvényt, véges sokszor. Minden rekurzív függvény elágazással kezdődik, melyben eldől, hogy újból meghívja önmagát (vagy egy másik függvényt) vagy kilép a „ciklusból”.

3 Példa egy bináris fa láncolt ábrázolására
1 2 3 4 5 6 7 8 9

4 A bináris fa levelei, olyan pontok, melyeknek nincsenek gyerekei
1 2 3 4 5 6 7 8 9

5 A levelek megszámolása
A rekurzív függvény stuktogramja:

6 A fügvény müködése A függvény egy bináris fát kap paraméternek, és ennek a fának számolja meg a leveleit. A „t” jelöli a fát

7 Az első lépésben megvizsgálja, hogy a paraméterül kapott bináris fa üres-e.
Ha a fa üres, akkor a „return 0” utassál tér vissza a függvény (nem lehetnek gyerekei). Ha a fa nem üres, akkor továbblép, és megvizsgálja, hogy az adott csúcsnak vannak-e gyerekei.

8 Ha a gyökérnek, nincs jobb, illetve bal gyereke, akkor a függvény 1-es értékel tér vissza, ami azt jelenti, hogy a fa csak a gyökérből áll.

9 Ha a csúcsnak van jobb vagy bal gyereke, akkor meghívódik (ez) a Levszám függvény, a csúcs azon gyerekére, amely éppen létezik. A csúcs gyerekei: bal(t), jobb(t) Miközben a levelek számát összeadja.

10 A példában megadott fára a függvény 4es értékkel tér vissza, mivel a fa gyerekei a 7, 5, 8, 9 lesznek. 1 2 3 4 5 6 7 8 9

11 Először a gyökeret vizsgálja, ami a mi esetünkben 1.
Utána megvizsgálja a gyerekeit és azok gyerekeit. Mindez addig folytatódik, amig el nem ér például a 7-es csúcshoz, ahol már nem tud továbblépni, ekkor növeli a levélszámot és visszalép. Ez mindaddig megy míg be nem jártuk a teljes fát.

12 Hasonló függvény, mely alkalmas egy bináris fa leveleinek megszámolására.
Müködési elve hasonló az előbbihez.

13 A fa bejárása külömböző bejárásokkal
Ezek segítségével több információt is megtudhatunk a fáról: Preorder Inorder Postorder Pl: a leveleit is ki lehet iratni

14 Preorder bejárással kiírva a fa elemei: A bejárás stuktogramja:
1, 2, 4, 7, 5, 3, 6, 8, 9. A bejárás stuktogramja:

15 Inorder bejárással kiírva a fa elemei: A bejárás stuktogramja:
4, 7, 2, 5, 1, 3, 8, 6, 9. A bejárás stuktogramja:

16 Postorder bejárással kiírva a fa elemei: A bejárás stuktogramja:
7, 4, 5, 2, 8, 9, 6, 3, 1. A bejárás stuktogramja:

17 Vége


Letölteni ppt "Számoljuk meg rekurzív függvénnyel egy bináris fa leveleit!"

Hasonló előadás


Google Hirdetések