Sobes.tech
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.