Informatika2-2021/Sz¼tGyak11

A MathWikiből
(Változatok közti eltérés)
(Ú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 24., 23: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.
Személyes eszközök