Назад к вопросам
Junior — Middle
67
Есть ли возможность реализовать собственную структуру очереди?
Компании, где спрашивали
bip.ru
Ответ от нейросети
sobes.tech AI
Да, в iOS можно реализовать собственную структуру очереди. Например, можно создать класс, который будет хранить элементы в массиве и предоставлять методы для добавления (enqueue) и удаления (dequeue) элементов по принципу FIFO (первым пришёл — первым вышел). Это может быть полезно, если стандартные классы, такие как 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