Junior — Middle
Өз кезек түзүмүн ишке ашуу мүмкүнбү?
sobes.tech AI
AIден жооп
Ооба, iOSто өз кезек түзүмүн ишке ашырууга болот. Мисалы, элементтерди массивде сактап, FIFO (биринчи кирген, биринчи чыгат) принцибинде элементтерди кошуу (enqueue) жана алуу (dequeue) үчүн методдорду камсыздаган класс түзсө болот. Бул стандарттык класстар, мисалы DispatchQueue, конкреттүү тапшырмаларга ылайык келбеген учурда пайдалуу болушу мүмкүн.
Swiftте жөнөкөй кезек мисалы:
class Queue<T> {
private var elements: [T] = []
func enqueue(_ element: T) {
elements.append(element)
}
func dequeue() -> T? {
guard !elements.isEmpty else { return nil }
return elements.removeFirst()
}
var isEmpty: Bool {
return elements.isEmpty
}
}
let queue = Queue<Int>()
queue.enqueue(1)
queue.enqueue(2)
print(queue.dequeue()) // 1
print(queue.dequeue()) // 2