This shows you the differences between two versions of the page.
pa:laboratoare:laborator-04 [2022/03/01 23:59] darius.neatu [Laborator 4: Programare Dinamică (continuare)] |
pa:laboratoare:laborator-04 [2024/04/16 17:38] (current) radu.nichita |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Laborator 4: Programare Dinamică (2/2) ====== | + | ====== Laborator 04: Programare Dinamică (2/2) ====== |
===== Obiective laborator ===== | ===== Obiective laborator ===== | ||
Line 507: | Line 507: | ||
* o înmulțire de matrice patrătică de dimensiune KMAX are $KMAX^3$ operații | * o înmulțire de matrice patrătică de dimensiune KMAX are $KMAX^3$ operații | ||
* această metodă este eficientă când $KMAX << n$ (KMAX este mult mai mic decât n) | * această metodă este eficientă când $KMAX << n$ (KMAX este mult mai mic decât n) | ||
- | * ** complexitatea spațială **: $S = O(KMAX^3)$ | + | * ** complexitatea spațială **: $S = O(KMAX^2)$ |
- | * explicație | + | **Observație!** În ultimele calcule nu am șters constanta KMAX, întrucât apare la puterea a 2-a! $KMAX = 1000$ implică $KMAX^2 = 10^6$, valoare care nu mai poate fi ignorată în practică ($KMAX^2$ poate fi comparabil cu n). |
- | * este nevoie să stocăm câteva matrice | + | |
- | **Observație!** În ultimele calcule nu am șters constanta KMAX, întrucât apare la puterea a 3-a! $KMAX = 100$ implică $KMAX^3 = 10^6$, valoare care nu mai poate fi ignorată în practică ($KMAX^3$ poate fi comparabil cu n). | + | |
=== Gardurile lui Gigel (optimizare) === | === Gardurile lui Gigel (optimizare) === | ||
Line 617: | Line 615: | ||
<spoiler Comparație solutii (studiu de caz pentru curioși)> | <spoiler Comparație solutii (studiu de caz pentru curioși)> | ||
- | Pr git găsiți o sursă completă în care se realizează: | + | Pe git găsiți o sursă completă în care se realizează: |
* o verificare a faptului că cele 2 implementări (** gardurile_lui_Gigel** și **garduri_rapide**) produc aceleași rezultate | * o verificare a faptului că cele 2 implementări (** gardurile_lui_Gigel** și **garduri_rapide**) produc aceleași rezultate | ||
* un benchmark în care cele 2 implementări sunt comparate | * un benchmark în care cele 2 implementări sunt comparate | ||
- | * pe sistem uzual (laptop) s-au obținut următoarele rezulate: | + | * pe un sistem uzual (laptop) s-au obținut următoarele rezulate: |
<code bash> | <code bash> | ||
test case: varianta simplă | test case: varianta simplă |