Informatika2-2021/Sz¼tGyak11
(Új oldal, tartalma: „=Feladatok= ==Rekurzív== === Zárójelek === Adott egy sztring. Cseréljük le azokat a karaktereket $ jelre, amelyek zárójelek között vannak (a zárójeleket is b…”) |
|||
29. sor: | 29. sor: | ||
pl.:<br> | pl.:<br> | ||
15, 10, 5, 0, 5, 10, 15, | 15, 10, 5, 0, 5, 10, 15, | ||
+ | |||
+ | ==Fák== | ||
+ | ===Bináris fák=== | ||
+ | |||
+ | Másoljuk be a bináris fa definícióját. Ezen az osztályon fogunk dolgozni. | ||
+ | * Írjunk egy <tt>count(self)</tt> metódust, ami megszámolja a fa elemeinek a számát! | ||
+ | * Írjunk egy <tt>sum(self)</tt> metódust, ami a fa összes csúcsában lévő értékeket összegezi! | ||
+ | * Írjunk egy <tt>height(self)</tt> metódust, ami megmondja, hogy milyen magas a fa! | ||
+ | * Írjunk egy <tt>is_list(self)</tt> metódust, ami megmondja, hogy a bináris fa listává fajult-e. Egy bináris fa akkor fajult listává, ha minden csúcsának legfeljebb egy gyereke van. |
A lap 2021. április 25., 00:27-kori változata
Tartalomjegyzék |
Feladatok
Rekurzív
Zárójelek
Adott egy sztring. Cseréljük le azokat a karaktereket $ jelre, amelyek zárójelek között vannak (a zárójeleket is beleértve)! Figyelem, a zárójelek lehetnek egymásba ágyazva is, tehát, ha a bemeneti sztring (xc)aa(c(b)), akkor a kimenet $$$$aa$$$$$$ legyen!
deep_sum
Írjunk egy rekurzív függvényt, aminek bemenete egy olyan lista, mely listákat tartalmaz tetszőleges mélységig, melyekben pozitív egész számok vannak.
A függvény adja vissza a listában lévő számok összegét.
Pl.:
[1, 2, 3, [4, 5], [[[6], 7]]] -> 28
palindrom
Írjunk egy rekurzív függvény, ami eldönti egy stringről, hogy palindrom-e vagy sem.
Pl.:
aba -> True
abb -> False
second_best
Írjunk egy rekurzív függvényt, aminek bemenete egy legalább kételemű lista, melyekben pozitív egész számok vannak 0-tól 100-ig.
A függvény adja vissza a második legnagyobb értéket.
Pl.:
[10,25,60,45,30] -> 45
equal
Írjunk egy rekurzív függvényt, ami kiprinteli az összes olyan n hosszú 0/1 sorozatot, melyeknek az első és második felében a számjegyek összege megegyezik.
Pl.:
n=4 -> 0000, 0101, 0110, 1001, 1010, 1111,
n=5 -> 00000, 00100, 01001, 01101, 01010, 01110, 10001, 10101, 10010, 10110, 11011, 11111,
pattern
Írjunk egy rekurzív függvényt, melynek bemenete egy 5-tel osztható n egész szám, és kiprinteli a következő számsorozatot:
n, n-5, n-10, ..., 0, 5, 10, ..., n-5, n,
A megoldáshoz ne használjunk se listát, se for ciklust, se whilet.
pl.:
15, 10, 5, 0, 5, 10, 15,
Fák
Bináris fák
Másoljuk be a bináris fa definícióját. Ezen az osztályon fogunk dolgozni.
- Írjunk egy count(self) metódust, ami megszámolja a fa elemeinek a számát!
- Írjunk egy sum(self) metódust, ami a fa összes csúcsában lévő értékeket összegezi!
- Írjunk egy height(self) metódust, ami megmondja, hogy milyen magas a fa!
- Írjunk egy is_list(self) metódust, ami megmondja, hogy a bináris fa listává fajult-e. Egy bináris fa akkor fajult listává, ha minden csúcsának legfeljebb egy gyereke van.