Sobes.tech
Junior

În ce cazuri trebuie să folosiți Set în loc de Array?

sobes.tech AI

Răspuns de la AI

Set trebuie utilizat atunci când aspectele următoare sunt importante:

  • Unicitatea elementelor: Set-ul, prin natura sa, nu permite elemente duplicate. Dacă aveți nevoie de un set de valori unice, un Array va necesita logică suplimentară pentru filtrare.
  • Performanță ridicată în operațiuni de apartenență (verificare de existență): Verificarea dacă un Set conține un anumit element are o complexitate medie de O(1) (amortizată), în timp ce pentru un Array este O(n).
  • Performanță ridicată în operațiuni de inserare și ștergere: Inserarea și ștergerea elementelor după valoare în Set au, de asemenea, în mod obișnuit, o complexitate medie apropiată de O(1), în timp ce pentru un Array poate ajunge la O(n) în cazul inserărilor/ștergerilor care nu se fac la sfârșit.
  • Fără necesitatea de a păstra ordinea elementelor: Set-ul nu garantează nicio ordine specifică a elementelor. Dacă ordinea este importantă, utilizați un Array.

Scenarii tipice de utilizare a Set-urilor:

  • Stocarea unui set de identificatori unici.
  • Filtrarea duplicatelor dintr-o colecție.
  • Executarea eficientă a operațiilor de set, cum ar fi uniunea, intersecția și diferența.
  • Verificarea rapidă a existenței unui element în colecție.

Exemplu de obținere a elementelor unice dintr-un array folosind un Set:

let numbers = [1, 2, 3, 2, 4, 1, 5]
let uniqueNumbers = Set(numbers) // {1, 2, 3, 4, 5} - ordinea nu este garantată