Informatika1-2013/Gyakorlat8
A MathWikiből
A lap korábbi változatát látod, amilyen Rpalovics (vitalap | szerkesztései) 2013. október 29., 13:00-kor történt szerkesztése után volt.
Tartalomjegyzék |
Feladatok
- A felhőelefántot nézzétek, ha egy megoldást mutatok be.
1. feladat - Szélességi bejárás
- A szélességi bejárásról bővebben itt olvashattok.
- Írj függvényt Sage-ben, mely megvalósítja a szélességi bejárást egy paraméterként kapott G gráfon.
- Írd meg a függvényt úgy, hogy a bejárás alapja egy rekurzív algoritmus legyen.
2. feladat - Jaccard hasonlóság
Gyakori feladat, hogy két halmazról kell eldöntenünk, mennyire "hasonlóak". Például
- meg kell mondanunk, hogy két vásárló mennyire vett azonos termékeket
- két ember mennyire olvas hasonló könyvket, hallgat azonos zenét, ...
Az alapfeladat, hogy eldöntsük Sage-ben két listáról, hogy "mennyire tartalmaznak azonos elemeket". (A listák egy-egy matematikai értelemben vett halmaznak felelnek meg.)
- Multiplicitás nélküli halmazok összehasonlításának egyik módja a Jaccard index kiszámítása. Ez egyszerűen két halmaz metszetének és uniójának hányadosa: Jaccard index
- Írj sage függvényt, mely
- bemenetként megkap két listát,
- kiszámolja a két lista Jaccard-indexét,
- nem dolgozik multiplicitással, tehát például a ['ferrari','mercedes','ferrari', 'mercedes'] és ['mercedes','williams','mercedes'] listák hasonlósága 1/3.
3. Feladat - PageRank
- A PageRank algorimtusról bővebben itt olvashattok.
- Implementáljátok a PageRank algoritmust. Írjatok függvényt, mely bemenetként egy gráfot kap, kimenetként pedig a PageRank vektort adja vissza.