Junior
Hangi durumlarda Array yerine Set kullanmalısınız?
sobes.tech yapay zeka
AI'dan gelen yanıt
Set, aşağıdaki unsurlar önemliyse kullanılmalıdır:
- Öğelerin benzersizliği: Set, doğası gereği tekrar eden öğelere izin vermez. Benzersiz değerler kümesine ihtiyacınız varsa, Array ek mantık gerektirir.
- İlişki kontrolü (varlık kontrolü) işlemlerinde yüksek performans: Bir Set'in belirli bir öğeyi içerip içermediğini kontrol etmek ortalama O(1) karmaşıklığa sahiptir (amortize edilmiş), oysa Array için bu O(n) dir.
- Ekleme ve silme işlemlerinde yüksek performans: Set'te değerle öğe ekleme ve silme işlemleri genellikle O(1) yakın ortalama karmaşıklığa sahiptir, oysa Array'de bu, ekleme/silme işlemi sona yapılmadığında O(n) olabilir.
- Öğelerin sırasını koruma gereksinimi yok: Set, öğelerin belirli bir sırasını garanti etmez. Sıra önemliyse, Array kullanın.
Set kullanım örnekleri:
- Benzersiz kimlikler kümesi saklama.
- Bir koleksiyondaki tekrar edenleri filtreleme.
- Birleşim, kesişim ve fark gibi kümeler üzerinde verimli işlemler yapma.
- Koleksiyonda öğe olup olmadığını hızlıca kontrol etme.
Set kullanarak bir diziden benzersiz öğeleri alma örneği:
let numbers = [1, 2, 3, 2, 4, 1, 5]
let uniqueNumbers = Set(numbers) // {1, 2, 3, 4, 5} - sıra garanti edilmez