Sobes.tech
Junior

Set yerine Array kullanılması gereken durumlar nelerdir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Set, aşağıdaki durumlarda kullanılmalıdır:

  • Yalnızca benzersiz öğelerin saklanması gerekiyorsa. Set, koleksiyonda her öğenin en fazla bir kez bulunmasını otomatik olarak sağlar.
  • Bir öğenin varlığını kontrol etmede yüksek performans. Set içindeki contains(_:) işlemi ortalama O(1) zaman karmaşıklığına sahiptir, oysa Array için bu O(n)’dir.
  • Öğelerin sırası önemli değil. Array’den farklı olarak, Set öğelerinin belirli bir sırasını garanti etmez.
  • Sık sık ekleme, silme ve varlık kontrolü işlemleri gerekiyorsa. Bu işlemler, sıralama önemli değil ve benzersizlik gerekiyorsa, büyük koleksiyonlar için genellikle Array’den daha etkilidir.

Arama farkını gösteren kod örneği:

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

// Array’da arama - doğrusal arama (O(n))
let isPresentInArray = array.contains(element)

// Set
let set: Set = [1, 2, 3, 4, 5]
// Set’de arama - hashing (ortalama O(1))
let isPresentInSet = set.contains(element)