Sobes.tech
Junior — Middle

Πώς υλοποιείς τη δομή δεδομένων στοίβα στο σύστημά σου;

sobes.tech AI

Απάντηση από 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() ?? "άδειο") // 20
print(stack.peek() ?? "άδειο") // 10

Αυτού του είδους η στοίβα μπορεί να χρησιμοποιηθεί για την αποθήκευση του ιστορικού ενεργειών, πλοήγησης και άλλων εργασιών όπου η σειρά επεξεργασίας των στοιχείων είναι σημαντική.