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.
Setiçindekicontains(_:)işlemi ortalama O(1) zaman karmaşıklığına sahiptir, oysaArrayiç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)