Algoritmuselmélet - ZH, 2013.04.03.

A VIK Wikiből


2013.04.03. ZH megoldásai

1. Feladat (Van megoldás)

Mi az a legkisebb r racionális szám, melyre teljesül, hogy 1+2+3+...+n=O(nr)?

Megoldás

2. Feladat (Van megoldás)

Egy A[i,j] n x n-es táblázat minden mezőjében egy egész szám van írva (nem feltétlenül csak pozitívak). Adjon O(n2) lépésszámú algoritmust, ami eldönti, hogy melyik az a téglalap alakú része a táblázatnak, melynek bal felső sarka egybe esik a nagy táblázat bal felső sarkával és benne az elemek összege az egyik legnagyobb.

(Vagyis olyan k,l-t keresünk, amire ik,jlA[i,j] maximális.)

Megoldás

3. Feladat (Van megoldás)

Kaphatjuk-e az 1,7,3,6,11,15,22,17,14,12,9 számsorozatot úgy, hogy egy (a szokásos rendezést használó) bináris keresőfában tárolt elemeket posztorder sorrendben kiolvasunk?

Megoldás

4. Feladat (Van megoldás)

Adjacencia-mátrixával adott n csúcsú, irányított gráfként ismerjük egy város úthálózatát. El szeretnék jutni A pontból B pontba, de sajnos minden csomóponthoz várnunk kell a nagy hóesés miatt, a várakozás hossza minden csomópontra ismert és független attól, hogy merre akarunk továbbmenni. Adjon algoritmust, ami O(n2) lépésben eldönti, hogy merre menjünk, hogy a lehető legkevesebbet kelljen várni összességében. (A csomópontok közötti utak hosszának megtétele a várakozáshoz képest elhanyagolható időbe telik, tekintsük 0-nak. A-ban és B-ben nem kell várakozni.)

Megoldás

5. Feladat

Adjacencia-mátrixával adott n csúcsú, élsúlyozott, irányítatlan gráfként ismerjük egy ország úthálózatát (a csomópontok a városok, az élek a közvetlen összeköttetések a városok között). Az élek súlya a városok közti távolságot adja meg. (Feltehetjük, hogy a távolságok egészek.) Adjon egy O(n6) lépésszámú algoritmust, ami eldönti, hogy lehetséges-e úgy kiválasztani öt várost, hogy ezektől bármely más város legfeljebb 50 kilométerre van. (Ezekbe a városokba lenne érdemes hókoztrókat telepíteni.)

Megoldás

6. Feladat (Van megoldás)

Egy tömbben adott n darab 0-tól különböző egész szám (lehetnek negatívak is köztük) és adott egy k egész szám is. Adjon O(nlogn) lépésszámú algoritmust, ami eldönti, hogy melyik az a k elem a tömbben, melyek szorzata maximális.

Megoldás

7. Feladat (Van megoldás)

Az A[12013] tömbben egy kupac adatstruktúrát tárolunk, minden tárolt elem különböző. Tudjuk, hogy ebben a kupacban a legnagyobb elem A[i]. Határozza meg i összes lehetséges értékét!

Megoldás

8. Feladat (Van megoldás)

(a) Igaz-e, hogy egy piros-fekete fa tetszőleges belső fekete csúcshoz tartozó részfa (az a részfa, aminek ez a fekete csúcs a gyökere) is egy piros-fekete fa?

(b) Igaz-e ugyanez egy tetszőleges belső piros csúcshoz tartozó részfára?

Megoldás