Junior — Middle
Jak implementujesz strukturę danych stos w swoim systemie?
sobes.tech AI
Odpowiedź od AI
Stos to struktura danych działająca na zasadzie LIFO (Last In, First Out). W Swift można zaimplementować stos za pomocą tablicy, dodając metody push i pop do zarządzania elementami.
Przykład implementacji stosu w 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
}
}
// Użycie:
var stack = Stack<Int>()
stack.push(10)
stack.push(20)
print(stack.pop() ?? "pusty") // 20
print(stack.peek() ?? "pusty") // 10
Taki stos można używać do przechowywania historii działań, nawigacji i innych zadań, gdzie ważna jest kolejność przetwarzania elementów.