Differences

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

Link to this comparison view

Both sides previous revision Previous revision
aa:lab:5 [2025/11/01 11:47]
codrut_eduard.bicu
aa:lab:5 [2025/11/01 11:48] (current)
codrut_eduard.bicu
Line 11: Line 11:
 ==== Context ==== ==== Context ====
  
-În hashing, fiecare element este atribuit aleatoriu unui dintre cele <​math>​k</​math> ​sloturi.  ​+În hashing, fiecare element este atribuit aleatoriu unui dintre cele sloturi.  ​
 Problemele pe care le studiem astăzi au aplicații directe în analiza performanței tabelelor hash. Problemele pe care le studiem astăzi au aplicații directe în analiza performanței tabelelor hash.
  
Line 18: Line 18:
 === Exemplul 1: Paradoxul zilelor de naștere === === Exemplul 1: Paradoxul zilelor de naștere ===
  
-Scenariu: avem <​math>​n</​math> ​persoane și <​math>​k = 365</​math> ​zile posibile.  ​+Scenariu: avem persoane și k = 365 zile posibile.  ​
 Dorim să aflăm probabilitatea ca cel puțin două persoane să aibă aceeași zi de naștere. Dorim să aflăm probabilitatea ca cel puțin două persoane să aibă aceeași zi de naștere.
  
 Formula teoretică este: Formula teoretică este:
  
-<math block>+$$
 P(\text{coliziune}) = 1 - \frac{k!}{(k-n)! \, k^n} P(\text{coliziune}) = 1 - \frac{k!}{(k-n)! \, k^n}
-</math block>+$$
  
 Codul de mai jos simulează fenomenul: Codul de mai jos simulează fenomenul:
Line 47: Line 47:
  
 **Întrebări:​** **Întrebări:​**
-  1. Pentru ce valoare a lui <​math>​n</​math> ​probabilitatea depășește 0.5?+  1. Pentru ce valoare a lui probabilitatea depășește 0.5?
   2. Cum se aseamănă acest fenomen cu coliziunile dintr-o tabelă hash?   2. Cum se aseamănă acest fenomen cu coliziunile dintr-o tabelă hash?
  
Line 54: Line 54:
 === Exemplul 2: Problema colecționarului de cupoane === === Exemplul 2: Problema colecționarului de cupoane ===
  
-Scenariu: avem <​math>​n</​math> ​cupoane distincte.  ​+Scenariu: avem cupoane distincte.  ​
 La fiecare pas tragem unul aleator (uniform).  ​ La fiecare pas tragem unul aleator (uniform).  ​
 Dorim să aflăm câte extrageri sunt necesare în medie până le avem pe toate. Dorim să aflăm câte extrageri sunt necesare în medie până le avem pe toate.
  
 Rezultatul teoretic: Rezultatul teoretic:
-<math block>+$$
 E[T] = n H_n = n(1 + \tfrac{1}{2} + \tfrac{1}{3} + \dots + \tfrac{1}{n}) E[T] = n H_n = n(1 + \tfrac{1}{2} + \tfrac{1}{3} + \dots + \tfrac{1}{n})
-</math block>+$$
  
 Simulare: Simulare:
Line 86: Line 86:
  
 **Întrebări:​** **Întrebări:​**
-  1. Cum crește numărul așteptat de extrageri odată cu <​math>​n</​math>​?+  1. Cum crește numărul așteptat de extrageri odată cu )?
   2. Ce analogie există între această problemă și procesul de „umplere” a tuturor sloturilor într-o tabelă hash?   2. Ce analogie există între această problemă și procesul de „umplere” a tuturor sloturilor într-o tabelă hash?