Να δοθεί ο ορισμός της στοίβας.
Σκέψη / Μεθοδολογία: Κλειστή ερώτηση ορισμού — δίνεται ρητά στο §3.4.
Λύση:
Ανατρέχουμε στον ορισμό του §3.4 και τον αποδίδουμε πλήρως, αναφέροντας τη μέθοδο LIFO.
Απάντηση: Στοίβα (stack) είναι μια δομή δεδομένων στην οποία τα στοιχεία που εισάγονται τελευταία είναι τα πρώτα που εξάγονται — μέθοδος LIFO (Last-In-First-Out, «τελευταίο μέσα, πρώτο έξω»).
Πρόσεξε:
Ποιες είναι οι βασικές λειτουργίες που γίνονται σε μία στοίβα;
Σκέψη / Μεθοδολογία: Κλειστή ερώτηση απαρίθμησης — οι δύο λειτουργίες και οι σχετικοί έλεγχοι δίνονται στο §3.4.
Λύση:
Περιγράφουμε την ώθηση και την απώθηση, αναφέροντας και τους απαραίτητους ελέγχους υπερχείλισης/υποχείλισης.
Απάντηση: Οι δύο βασικές λειτουργίες μιας στοίβας είναι η ώθηση (push) — τοποθέτηση νέου στοιχείου στην κορυφή — και η απώθηση (pop) — αφαίρεση του στοιχείου από την κορυφή. Πριν από κάθε push ελέγχουμε αν η στοίβα είναι γεμάτη (υπερχείλιση/overflow)· πριν από κάθε pop ελέγχουμε αν υπάρχει τουλάχιστον ένα στοιχείο (υποχείλιση/underflow).
Πρόσεξε:
