Sobes.tech
Junior

Când ar trebui să folosiți Set în loc de Array?

sobes.tech AI

Răspuns de la AI

Set trebuie utilizat în următoarele cazuri:

  • Necesitatea de a stoca doar elemente unice. Set asigură automat că fiecare element apare în colecție nu mai mult de o dată.
  • Performanță ridicată la verificarea existenței unui element. Operația contains(_:) în Set are o complexitate amortizată de O(1) în medie, în timp ce în Array este O(n).
  • Ordinea elementelor nu contează. Spre deosebire de Array, Set nu garantează o anumită ordine de enumerare a elementelor sale.
  • Se necesită operații frecvente de adăugare, ștergere și verificare a existenței. Aceste operații în Set sunt de obicei mai eficiente decât în Array pentru colecții mari, dacă ordinea nu este importantă și se cere unicitate.

Exemplu de cod care evidențiază diferența în căutare:

// Array
let array = [1, 2, 3, 4, 5]
let element = 5

// Căutare în Array - căutare liniară (O(n))
let isPresentInArray = array.contains(element)

// Set
let set: Set = [1, 2, 3, 4, 5]
// Căutare în Set - hashing (în medie O(1))
let isPresentInSet = set.contains(element)