Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
aa:lab:2 [2025/10/12 18:38] dmihai |
aa:lab:2 [2025/10/14 10:42] (current) dmihai |
||
|---|---|---|---|
| Line 38: | Line 38: | ||
| \end{array}\ | \end{array}\ | ||
| such\ that\ \forall\ n \ge n_0,\ \ | such\ that\ \forall\ n \ge n_0,\ \ | ||
| - | 0 \le g(n) \le cf(n) \}$ | + | 0 \le g(n) < cf(n) \}$ |
| $ \omega(f(n)) = \{ g: \mathbb{R}^{+} \rightarrow \mathbb{R}^{+}\ |\ | $ \omega(f(n)) = \{ g: \mathbb{R}^{+} \rightarrow \mathbb{R}^{+}\ |\ | ||
| Line 46: | Line 46: | ||
| \end{array}\ | \end{array}\ | ||
| such\ that\ \forall\ n \ge n_0,\ \ | such\ that\ \forall\ n \ge n_0,\ \ | ||
| - | 0 \le cf(n) \le g(n) \}$ | + | 0 \le cf(n) < g(n) \}$ |
| ===== Syntactic sugars ====== | ===== Syntactic sugars ====== | ||
| Line 136: | Line 136: | ||
| - | 1. Implementați un contor binar împreună cu operația de incrementare (''inc''), folosind un array de tip ''unsigned''. Folosiți o variabilă statică pentru a număra numărul de schimbări de biți (flips) într-o secvență de $ n$ operații de incrementare. | + | 1. Implementați un contor binar împreună cu operația de incrementare (''inc''), folosind un array de tip ''unsigned''. Folosiți o variabilă globală pentru a număra numărul de schimbări de biți (flips) într-o secvență de $ n$ operații de incrementare. |
| 2. Experimentați cu diferite valori ale lui ''n'' și utilizați observațiile obținute pentru a realiza o analiză agregată a costului unei secvențe de $ n$ operații de incrementare. | 2. Experimentați cu diferite valori ale lui ''n'' și utilizați observațiile obținute pentru a realiza o analiză agregată a costului unei secvențe de $ n$ operații de incrementare. | ||
| Line 143: | Line 143: | ||
| 4. Pentru editorul din laboratorul trecut, implementați un buffer de text, folosind un array care își dublează dimensiunea atunci când este plin și o înjumătățește atunci când este pe jumătate gol. Implementați operațiile ''add'' și ''remove''. | 4. Pentru editorul din laboratorul trecut, implementați un buffer de text, folosind un array care își dublează dimensiunea atunci când este plin și o înjumătățește atunci când este pe jumătate gol. Implementați operațiile ''add'' și ''remove''. | ||
| - | Estimați costul unei secvențe de operații de adăugare și eliminare? Luați în considerare scenariul nefavorabil, fără a face nicio presupunere asupra ordinii în care apar operațiile. | + | |
| + | Estimați costul unei secvențe de operații de adăugare și eliminare? | ||
| + | Luați în considerare scenariul nefavorabil, fără a face nicio presupunere asupra ordinii în care apar operațiile. | ||