Junior — Middle
Is it possible to implement your own queue structure?
sobes.tech AI
Answer from AI
Yes, it is possible to implement a custom queue structure in iOS. For example, you can create a class that stores elements in an array and provides methods for adding (enqueue) and removing (dequeue) elements based on the FIFO (first-in, first-out) principle. This can be useful if standard classes like DispatchQueue are not suitable for specific tasks.
Here's a simple queue example in 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