Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
aa:tema_1_2019 [2019/11/15 18:35]
cpeticila
aa:tema_1_2019 [2019/11/23 11:18] (current)
cpeticila
Line 4: Line 4:
 ''​Responsabili tema'':​ Peticila Alexandru, Peticila Constantin ''​Responsabili tema'':​ Peticila Alexandru, Peticila Constantin
  
-   * I. (//0.3p//) Pentru fiecare din urmatoarele recurente aplicati teorema Master (sau argumentati de ce nu poate fi aplicata, daca este cazul):+   * I. (//0.2p//) Pentru fiecare din urmatoarele recurente aplicati teorema Master (sau argumentati de ce nu poate fi aplicata, daca este cazul):
       * $math[T(n) = 4T(\frac{n}{2}) + n^{2.5}]       * $math[T(n) = 4T(\frac{n}{2}) + n^{2.5}]
       * $math[T(n) =  4T(\frac{n}{2}) + n^2 log(n)]       * $math[T(n) =  4T(\frac{n}{2}) + n^2 log(n)]
       * $math[T(n) = T(\sqrt{n}) + \Theta(log( log( n)))]       * $math[T(n) = T(\sqrt{n}) + \Theta(log( log( n)))]
-      * $math[T(n) = 3T(\frac{n}{3}) + \frac{n}{log (n)}] 
       * $math[T(n) = T(\frac{n}{2}) + n(2 − cos n)]       * $math[T(n) = T(\frac{n}{2}) + n(2 − cos n)]
-      * $math[T(n) = 16T(\frac{n}{4}) + n!]+      * $math[T(n) = 3T(\frac{n}{3}) + \frac{n}{log (n)}] 
  
  
Line 17: Line 17:
       * $math[T(n) = O(f(n))], unde $math[T(n) = T(n − 1) + T(\frac{n}{2}) + n]        * $math[T(n) = O(f(n))], unde $math[T(n) = T(n − 1) + T(\frac{n}{2}) + n] 
  
-  * III. (//2p//) Rezolvati urmatoarea recurenta: ​+  * III. (//1.5p//) Rezolvati urmatoarea recurenta: ​
       * $math[T(a^n) = aT(a^{(n-1)} ) + 2ca^n] \\ unde a, c constante cu a > 1 si T(1) = 0       * $math[T(a^n) = aT(a^{(n-1)} ) + 2ca^n] \\ unde a, c constante cu a > 1 si T(1) = 0
  
-  * IV. (//1.5p//) Pentru ​inmulturea ​matricelor Matei foloseste in acest moment un algoritm cu recurenta urmatoare: $math[T(n) = 7T(n/2) + n^2].\\ El nu este multumit de complexitatea acestui algoritm si doreste sa realizeze un algoritm asimptotic mai rapid prin impartirea matricelor in bucati de dimensiune n/4*n/4.\\ Care este numarul maxim de subprobleme pe care algorimul ​sau poate sa il creeze astfel incat sa fie asimptotic mai rapid decat algoritmul cel vechi?\\ ''​Nota'':​ Pasii de divide si combina au impreuna complexitatea de Θ(n^2 ).+  * IV. (//1.5p//) Pentru ​inmultirea ​matricelor Matei foloseste in acest moment un algoritm cu recurenta urmatoare: $math[T(n) = 7T(n/2) + n^2].\\ El nu este multumit de complexitatea acestui algoritm si doreste sa realizeze un algoritm asimptotic mai rapid prin impartirea matricelor in bucati de dimensiune n/4*n/4.\\ Care este numarul maxim de subprobleme pe care algoritmul ​sau poate sa il creeze astfel incat sa fie asimptotic mai rapid decat algoritmul cel vechi?\\ ''​Nota'':​ Pasii de divide si combina au impreuna complexitatea de Θ($math[n^2).
  
-  * V. (//3p//) Analizati complexitatea urmatorului algoritm,+  * V.(//2 x 0.75 = 1.5p//) Spunem ca f(n) = $math[{Ω}^{ꝏ}(g(n))] daca ∃ un c ∈ $math[{R}^{+}] astfel incat f(n) ≥ c*g(n) ≥ 0 pentru o infinitate de numere n. 
 +         ​- ​ Verificati daca  Ω = $math[{Ω}^{ꝏ}] si $math[{Ω}^{ꝏ}] = Ω 
 +         - Stabiliti relatia de adevar a urmatoarei propozitii:​\\ Fie f(n) si g(n) doua functii asimptotic positive. Atunci: fie f(n) = O(g(n)), fie f(n) = $math[{Ω}^{ꝏ}](g(n)) sau ambele.\\ Raspunsul este acelasi si daca inlocuim $math[{Ω}^{ꝏ}] cu Ω? Argumentati! 
 + 
 +  * VI. (//2p//) Analizati complexitatea urmatorului algoritm:
 <code java> <code java>
 private static Integer recursiveMethod(Integer length) { private static Integer recursiveMethod(Integer length) {
Line 34: Line 38:
 </​code>​ </​code>​
  
-''​Nota'':​ Metoda random(n) foloseste o unitate de timp si returneaza o valoare uniform distribuita in intervalul [0,n], iar timpul pentru ​celelate ​instructiuni e neglijabil.+''​Nota'':​ Metoda random(n) foloseste o unitate de timp si returneaza o valoare uniform distribuita in intervalul [0,n], iar timpul pentru ​celelalte ​instructiuni e neglijabil.\\ 
  
-=== PRECIZARI ===+=== PRECIZARI===
   * Tema va fi redactata individual.   * Tema va fi redactata individual.
-  * Tema va fi predata la cursul din data de **23 noiembrie 2018**.+  * Tema va fi predata la cursul din data de **<color #​ed1c24>​6.12.2019</​color>​** .
   * Tema valoreaza **1** punct din nota finala.   * Tema valoreaza **1** punct din nota finala.