Junior — Middle
Cum se implementează stocarea elementelor într-un set cu suport pentru ordinea lor de urmărire?
sobes.tech AI
Răspuns de la AI
Pentru a stoca elemente într-un set păstrând ordinea în care au fost adăugate în iOS (Swift), se poate folosi o structură de date care combină proprietățile unui set și ale unui array. În biblioteca standard Swift, există un tip numit OrderedSet, începând cu iOS 13 și macOS 10.15, care face exact acest lucru — stochează elemente unice și păstrează ordinea lor.
Exemplu de utilizare a OrderedSet:
import Foundation
var orderedSet = OrderedSet<String>()
orderedSet.append("apple")
orderedSet.append("banana")
orderedSet.append("apple") // nu va fi adăugat, deoarece elementul există deja
print(orderedSet) // ["apple", "banana"]
Dacă OrderedSet nu este disponibil, se poate implementa un comportament similar folosind un array pentru ordine și un set pentru verificarea unicitații:
var array: [String] = []
var set: Set<String> = []
func addElement(_ element: String) {
if !set.contains(element) {
set.insert(element)
array.append(element)
}
}
addElement("apple")
addElement("banana")
addElement("apple")
print(array) // ["apple", "banana"]
Astfel, păstrezi ordinea adăugării și unicitatea elementelor.