Sunteți pe pagina 1din 2

Dragi elevi! Rezolvați individual aceste sarcini.

Răspunsurile și calculele le scrieți în coloana din


dreapta sau în continuare.
Documentul Word cu rezolvările le trimite-ți pe adresa gcurbet@gmail.com cu indicarea
numelui, prenumelui precum și clasa.

FIȘA DE LUCRU ”Complexitatea temporală a algoritmilor”


Întrebări şi exerciţii
1. Indicaţi termenii dominanţi:
Item Răspuns:
a) 12n  5; 12n
b) 6n  100n  18;
2
6n2
c) 15n 3  1000n 2  25n  6000; 15n3
d) 2000n  2  13;
3 n
2000n3
e) n log2 n  n 5  300n 2  6; n5
f) 3n  2n  14n 3  21; 3n
g) n 5  10n 4  200n 3  300n 2  1000n. n5
2. Cum se clasifică algoritmii în funcţie de complexitatea temporală?
Răspuns: In functie de complexitatea temporala algoritmii se clasifica in logaritmici, constanți,
liniari, polinomiali, exponențiali și factoriali.
Determinaţi tipul algoritmilor, cunoscând complexitatea temporală:
Item Răspuns:
a) Q n   200n  15; Liniar
b) Q n   2  25n  1000;
n 2
Exponențial
c) Q n   n  3  6000n  10 ;
3 n 2 6
Polinomial
d) Q n   3  2  n  4000;
n n 10
Exponențial
e) Q n   n log2 n
 n  n  1500;
3 2 Exponențial
f) Q n   100n 2  15n 3  8 n  900; Polinomial
3. Cum credeţi, prin ce se explică importanţa termenului dominant în analiza complexităţii temporale
a algoritmilor?
Răspuns: Deoarece doar termenul dominant in mare parte poate determina rezultatul
programului
4. Se consideră procedurile N2, N3 şi N4 din paragraful precedent. În urma estimării numărului de
operaţii elementare s-a obţinut:
– QN 2  n   602n 2  2n  2; Q(E)
– QN 3  n   2n  2n  2n  2; 5
3 2

– QN 4  n   2n 4  2n 3  2n 2  2n  2; 8
Determinaţi ordinul de complexitate temporală a algoritmilor descrişi cu ajutorul acestor proceduri.
Comparaţi viteza de creştere a timpilor de execuţie TN 2  n  , TN 3  n  şi TN 4  n  , folosind în acest
scop graficele din figura 4.4 (din manual).
Răspuns: Cu cat n e mai mare cu atat timpul de executie e mai mare

Se consideră un algoritm format din k cicluri imbricate:


for i1:=1 to n do
for i2:=1 to n do
...
for ik:=1 to n do P;
Numărul de operaţii elementare QP efectuate în procedura P este o mărime constantă. Estimaţi
complexitatea temporală a algoritmului.
Răspuns: Q(c)=Q(p)*k+m

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