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:lab:11 [2024/01/19 12:19]
dmihai
aa:lab:11 [2025/01/23 14:09] (current)
dmihai
Line 1: Line 1:
 ===== Analiza amortizata ===== ===== Analiza amortizata =====
  
-Utilizati aggregate methodaccounting method si potential method ​pentru a gasi costul amortizat ​pentru situatiile ​prezentate mai jos.+Utilizați metoda agregăriimetoda contabilizării și metoda potențialelor ​pentru a găsi costul amortizat ​în situațiile ​prezentate mai jos.
  
 $ \DeclareMathOperator{\push}{push} \DeclareMathOperator{\pop}{pop} \DeclareMathOperator{\mpop}{mpop} \DeclareMathOperator{\key}{key} \DeclareMathOperator{\cost}{cost} $ $ \DeclareMathOperator{\push}{push} \DeclareMathOperator{\pop}{pop} \DeclareMathOperator{\mpop}{mpop} \DeclareMathOperator{\key}{key} \DeclareMathOperator{\cost}{cost} $
 +
 === 1. Stack === === 1. Stack ===
  
-Presupunand ca avem o implementare a unei stive care permite ​operatiile ​$ \pop - O(1) $, $ \push - O(1) $ si $ \mpop(k) - O(k) $,  +Presupunând că avem o implementare a unei stive care permite ​operațiile ​$ \pop - O(1) $, $ \push - O(1) $ si $ \mpop(k) - O(k) $,  
-demonstrati ca pentru o secventa arbitrara ​$ S $ de $ n $ operatii, $ \cost(S) = O(n) $  +demonstrați că pentru o secvență arbitrară ​$ S $ de $ n $ operatii, $ \cost(S) = O(n) $  
-si ca fiecare ​operatie ​are un cost amortizat $ \cost(op) = O(1) $.+și că fiecare ​operație ​are un cost amortizat $ \cost(op) = O(1) $.
  
 **Exemplu:​** $ \push, \pop, \push, \push, \push, \mpop(2), \push, \pop, \push $ **Exemplu:​** $ \push, \pop, \push, \push, \push, \mpop(2), \push, \pop, \push $
Line 14: Line 15:
 === 2. Heap === === 2. Heap ===
  
-Un max-heap ​un arbore binar aproape complet - toate nivelele ​cu  +Un max-heap ​este un arbore binar aproape complet - toate nivelurile, ​cu excepția ​ultimuluisunt complete, iar ultimul este completat de la stânga ​la dreapta. Fiecare ​două noduri ​AA și BB, unde BB este fiu al lui AA, satisfac ​relația:
-exceptia ​ultimului sunt complete, iar ultimul este completat de  +
-la stanga ​la dreapta. Fiecare ​noduri ​A si B unde este fiu al lui +
-satisfac ​relatia:+
 $ \key(B) \leq \key(A) $ $ \key(B) \leq \key(A) $
  
-Un max-heap se poate stoca sub forma de array, unde $ a[i] $ are +Un max-heap se poate stoca sub formă ​de array, unde $ a[i] $ are 
 copiii $ a[2i] $ si $ a[2i+1] $. copiii $ a[2i] $ si $ a[2i+1] $.
  
-Adaugarea ​unui element ​presupune+Adăugarea ​unui element ​constă în următorii pași
-  - adauga ​un element ​in prima pozitie libera ​de pe ultimul nivelele +  - adaugă ​un element ​în prima poziție liberă ​de pe ultimul nivelele 
-  - compara ​elementul ​adaugat ​cu parintele si interschimba-i daca e cazul +  - compară ​elementul ​adăugat ​cu părintele și interschimbă-i dacă e cazul 
-  - repeta ​pasul anterior ​pana nodul respecta ​proprietatea ​in raport cu parintele ​lui sau a devenit ​radacina+  - repetă ​pasul anterior ​până ​nodul respectă ​proprietatea ​în raport cu părintele ​lui sau a devenit ​rădăcina
  
-Aratati ca fiecare inserare are un cost agregat $ \cost(op) = O(\log n) $.+Arătați că fiecare inserare are un cost agregat ​de $ \cost(op) = O(\log n) $.
  
  
 === 3. Binary Counter === === 3. Binary Counter ===
  
-Presupunand ca avem un contor binar implementat folosind o lista de $ biti +Presupunând că avem un contor binar implementat folosind o listă ​de \( \) bițiacesta ​permite doar operația \( increment ​\), care adaugă \( \) la contor. ​Această operație ​are complexitate ​temporală \( O(k) \) în cel mai rău caz. Arătați însă că operația ​are un cost amortizat constant.
-el permite doar operatia $ increment ​care adauga $ la contor. +
-Aceasta operatie ​are complexitate ​temporala ​O(k) in cel mai rau caz. Aratati insa ca operatia ​are un cost amortizat constant. +
  
 <​note>​ <​note>​
 Soluțiile acestui laborator se găsesc [[https://​ocw.cs.pub.ro/​ppcarte/​doku.php?​id=aa:​lab:​sol:​11|aici]] Soluțiile acestui laborator se găsesc [[https://​ocw.cs.pub.ro/​ppcarte/​doku.php?​id=aa:​lab:​sol:​11|aici]]
 </​note>​ </​note>​
 +