Back to questions
Junior — Middle
80
Каким образом ты реализуешь структуру данных стек в своей системе?
Answer from AI
sobes.tech AI
Стек — это структура данных, работающая по принципу LIFO (Last In, First Out). В Swift можно реализовать стек с помощью массива, добавляя методы push и pop для управления элементами.
Пример реализации стека на Swift:
struct Stack<Element> {
private var elements: [Element] = []
mutating func push(_ element: Element) {
elements.append(element)
}
mutating func pop() -> Element? {
return elements.popLast()
}
func peek() -> Element? {
return elements.last
}
var isEmpty: Bool {
return elements.isEmpty
}
var count: Int {
return elements.count
}
}
// Использование:
var stack = Stack<Int>()
stack.push(10)
stack.push(20)
print(stack.pop() ?? "empty") // 20
print(stack.peek() ?? "empty") // 10
Такой стек можно использовать для хранения истории действий, навигации и других задач, где важен порядок обработки элементов.