Sunteți pe pagina 1din 9

ALGORITMICA

Curs: Daniela Zaharie


cab 046B (parter)
e-mail: dzaharie@info.uvt.ro
web.info.uvt.ro/~dzaharie -> Fall 2013 -> Algorithms (in
Romanian) (materiale pentru curs si seminar)

Activitate laborator:
Isabela Dramnesc - cab 050B; idramnesc@info.uvt.ro
Flavia Micota - cab 050B; zflavia@info.uvt.ro
Marian Neagul - cab 045B; marian@info.uvt.ro

Materiale pentru laborator: http://web.info.uvt.ro/wiki/Algoritmica

Algoritmica - Introducere 1
Motivatie
Aproape zilnic:
Folosim un motor de cautare (ex: Google)
Beneficiem de un filtru anti-spam si/sau un antivirus
Aflm informaii despre prieteni i colaboratori prin intermediul
unei reele de socializare (e.g. Facebook, LinkedIn)

Ce se afl in spatele acestor instrumente ?


Algoritmi de cutare, potrivire dup cuvinte cheie, sortare,
calcul frecvene de apariie, identificare corelaii, clasificare etc.
Exemple: PageRank (Google)
EdgeRank (Facebook)

Algoritmica - Introducere 2
Motivatie
PageRank algoritm folosit de ctre
motoarele de cautare pentru ierarhizarea
paginilor web [Page & Brin, 1997]

Idee:
rang(P0)=(1-d)+d*(rang(P1)/L1+rang(Pk)/Lk)

P0 pagina al crui rang se calculeaz


P1,, Pk pagini care conin link-uri ctre P0 Web = graf
Li - numarul de link-uri ce pleaca din Pi Criterii de ierarhizare = scor
probabilist
d din (0,1) coeficient de damping
(modeleaz impactul trecerii timpului) Calcul rang = prin algoritm
iterativ sau prin calcul
algebric (rezolvarea unui
Algoritmica - Introducere sistem liniar) 3
Motivatie
EdgeRank algoritm folosit in Facebook
pentru a realiza selecia noutilor
postate pe wall (News Feed)

Idee:
Interaciunea dintre un utilizator i un
obiect din News Feed definete o
muchie (edge)
Fiecare muchie este caracterizat prin
3 factori care determin importana sa:
afinitate, pondere, vechime
Cu ct importana unei muchii e mai
mare cu att e mai probabil s apar in
News
Algoritmica - Introducere 4
Despre ce este acest curs ?
Cursul de algoritmic este despre:
proiectarea i analiza algoritmilor
Implic:
gndire abstract
abiliti de rezolvare a problemelor

Acest curs nu este:


Despre un limbaj de programare
(totui algoritmii vor fi implementai limbajul de programare
folosit este: Python - http://www.python.org/ )
Un curs de matematic
(totui sunt necesare unele cunotine de matematic: noiuni
fundamentale: mulime, funcie, ir, matrice etc.
metode de demonstrare: reducere la absurd, inducie
matematic ) Algoritmica - Introducere 5
Structura
1. Introducere n rezolvarea algoritmic a problemelor
2. Descrierea algoritmilor
3. Verificarea corectitudinii algoritmilor
4. Analiza eficienei algoritmilor
5. Analiza algoritmilor de cutare i sortare
6. Tehnici de rezolvare algoritmic a problemelor:
reducere
divizare
alegere local optimal
programare dinamic
cutare sistematic n spaiul soluiilor

Algoritmica - Introducere 6
Bibliografie

1. S. Skiena The Algorithm Design Manual, second edition, 2008


2. T.H. Cormen, C.E. Leiserson, R.R. Rivest Introducere in
algoritmi, trad. Ed. Teora
3. D. Knuth Arta programrii calculatoarelor, vol. 1, 2
4. V. Cretu Structuri de date si algoritmi, Ed. Orizonturi
universitare, 2000
5. D. Zaharie Introducere n proiectarea i analiza algoritmilor,
Ed. Eubeea, 2008
Alte resurse:
(Leiserson) http://ocw.mit.edu/courses/electrical-engineering-and-
computer-science/6-046j-introduction-to-algorithms-sma-5503-fall-
2005/video-lectures/
(Skiena) http://www.cs.sunysb.edu/~algorith/video-lectures/
Algoritmica - Introducere 7
Evaluare
Examen final (scris + prob practic) 55%

Test laborator (scris+practic) 25%


(in cadrul laboratorului 9)

Activitate individual (teme laborator + activitate la laborator +


activitate curs) - 20%

Submitere teme: http://moodle.info.uvt.ro -> Algoritmica

Algoritmica - Introducere 8
Reguli
Termen de predare teme: o sptmn de la data enunrii temei
(pn la laboratorul urmtor)

Intrzierile n predarea temelor sunt penalizate cu 0.5 pcte /


sptmn

Temele se rezolve in echipe de cate 2 studenti (echipele se


formeaza in primele doua saptamani si se anunta cadrului didactic
responsabil cu activitatea de laborator)

Absene de la laborator: maxim 2 /semestru

Laboratorul poate fi recuperat doar impreun cu una dintre celelalte


subgrupe
Cu condiia s anunai cadrul didactic i s obinei acordul acestuia

Algoritmica - Introducere 9

S-ar putea să vă placă și