Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Lekce 3 - Stromová rekurze – Obecné stromy

V předchozí lekci, Stromová rekurze - Generování všech možností, jsme se naučili využít rekurzivních metod pro vygenerování všech možností při řešení nějaké úlohy.

V dnešním tutoriálu o rekurzivních algoritmech si ukážeme, jak vytvořit rekurzivní metody, ve kterých schéma volání tvoří obecné stromy.

Zobecníme si tak látku z lekce Stromová rekurze - Generování všech možností, kde schéma volání tvořilo binární stromy. Princip je obdobný, ale tentokrát budeme vytvářet rekurzivní potomky metody v cyklu.

Dnešní látku si předvedeme na dvou příkladech:

  • nejprve vytvoříme metodu, která nám vypíše obsah daného adresáře,
  • potom naprogramujeme metodu, která klientovi vypíše všechny možnosti, jakými mu bankomat může vyplatit požadovanou částku.

Výpis obsahu adresáře

Představme si, že chceme na monitor vypsat obsah adresáře. Daný adresář může kromě souborů obsahovat libovolný počet dalších adresářů, ty pak mohou obsahovat další adresáře atd. Struktura může vypadat třeba takto:

struktura adresáře

Taková úloha je přímo stvořena pro rekurzivní řešení, které je zde velmi jednoduché. V metodě zjistíme seznam všech položek adresáře a potom položky postupně projdeme. Pokud je položkou soubor, vypíšeme jeho jméno, pokud je to adresář, vypíšeme jeho obsah tak, že na něj zavoláme stejnou metodu:


 

...konec náhledu článku...
Pokračuj dál

Znalosti v hodnotě stovek tisíc získáš za pár korun

Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.

Koupit tento kurz

Koupit všechny aktuálně dostupné lekce s funkcí odevzdávání úloh za pouhých 200 Kč
Aktuální stav konta 0 Kč
Koupí tohoto balíčku získáš přístup ke všem 10 článkům (10 lekcí) tohoto kurzu.

Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.

Co od nás v dalších lekcích dostaneš?
  • Neomezený a trvalý přístup k jednotlivým lekcím.
  • Kvalitní znalosti v oblasti IT.
  • Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.

Popis článku

Požadovaný článek má následující obsah:

V tutoriálu o rekurzivních algoritmech se budeme věnovat tvorbě metod, u kterých schéma rekurzivních volání tvoří obecné stromy.

Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.

Článek pro vás napsal Jan Hnilica
Avatar
Autor se věnuje hlavně programování v C a v Pythonu
Aktivity