Μα ακριβώς εκεί θέλουμε να μπερδευτούν οι μαθητές. Μπορεί να έχει και μηδέν στοιχεία.
Αν το ερώτημα τίθεται ως αφορμή για συζήτηση, είναι καλό. Αν τίθεται για να κάψει κάτι αντίστοιχο από τις Πανελλαδικές
είναι ακόμα καλύτερο. Στην περίπτωση όμως που δεν ισχύουν τα προηγούμενα, τότε υπάρχουν τα εξής ζητήματα:
Δεν αποσαφηνίζεται τι ονομάζουμε στοιχείο σε μία δομή στοίβας/ουράς. Εϊναι αυτό καθ'αυτό το δεδομένο ή ο χώρος στον οποίο υπάρχει;
Σε πιο απτό παράδειγμα: Έχω μια βιβλιοθήκη και από το πάνω ράφι βγάζω ένα βιβλίο για να το διαβάσω. Πόσα βιβλία υπάρχουν στην βιβλιοθήκη μου;
Στην υλοποίηση πίνακα, αντιγράφω από το βιβλίο 1, κάθε συγκεκριμένη θέση μνήμης καλείται στοιχείο του πίνακα.
Επειδή ορίζονται ως σύνολα οι δομές στοίβα/ουρά/κτλ, η ερώτηση για το πότε είναι κενές είναι προτασιακός τύπος (που ξεφεύγει από τα όρια του μαθήματος)
Παράδειγμα σε python, που είναι πολύ γρηγορότερο: L=[[],[]]
Τι έχουμε εδώ; Έχουμε μια κενή λίστα ή μια λίστα που περιέχει δύο κενές λίστες;
( μπορούμε να δώσουμε -όχι και τόσο καλό- σε ΓΛΩΣΣΑ παράδειγμα: Στοίβα στην πρώτη θέση της οποίας υπάρχει ο κενός χαρακτήρας. Σχεδιάστε! )
Γνωρίζουμε ότι ο πίνακας είναι στατική δομή και το μέγεθος του, τα στοιχεία που τον αποτελούν, προκαθορίζονται.
Επομένως, αν πούμε κενό τον πίνακα που δεν περιέχει στοιχεία είναι αυτός που έχει μέγεθος μηδέν.
Δηλαδή θα έπρεπε να μιλάμε για άδειο πίνακα, ή άδεια ουρά ή άδεια στοίβα στις αντίστοιχες υλοποιήσεις.
Πολύ μεγάλη παρένθεση για την διαφαινόμενη παρανόηση, που εν μέρη οφείλεται στο συμπληρωματικό υλικό, τα στοιχεία σε μια δομή
δεν είναι υποχρεωτικά "απλά". Με "απλά" στοιχεία δίνουμε τα παραδείγματα, αλλά αυτό δεν σημαίνει ότι είναι ο κανόνας.
Επίσης, όταν εξάγουμε στοιχείο από την λίστα αυτό δεν φεύγει. Με την υλοποίηση των πινάκων σίγουρα παραμένει στην θέση του, ενώ με το πιο
αφηρημένο αρχικό παράδειγμα η δομή εμφανίζεται να έχει σταθερό μέγεθος. Αντίθετα στο βιβλίο 1 τα επεξηγηματικά σχήματα των παραγράφων 3.4 και 3.5 δεν έχουν σταθερό μέγεθος.
Τα σχήματα των παραδειγμάτων από την σελίδα 15, δεν δείχνουν κενή στοίβα (αν υποθέσουμε ότι σε κάποιο από αυτά δεν υπάρχει κανένας χαρακτήρας)
δείχνουν τι συμβαίνει
στο ενεργό κομμάτι της στοίβας.
Το διαβάζει λοιπόν ο μαθητής αυτό, διαβάζει και το παράδειγμα που ακολουθεί και αναρωτιέται. Τι μου δείχνει τώρα το παράδειγμα,
αφού αυτό που βλέπω δεν συμφωνεί με αυτά που αναφέρονται προηγουμένως. Αντίστοιχο θέμα στις εξετάσεις όπως το Α3 θα έχει επίσης πρόβλημα εφόσον ρητά αναφέρεται ότι τα στοιχεία δεν διαγράφονται από την στοίβα ή την ουρά.
----------
* πολύ
ωραίο και συμβάλλει στον περαιτέρω αποπροσανατολισμό σε διαδοχικές παραγράφους η ίδια λέξη ( δείκτης ) να χρησιμοποιείται με διαφορετικό νόημα.
** Ξαναδιαβάζοντας τι έγραψα, τα ως άνω μοίαζουν με υποβόσκουσα συμπάθεια προς τις υπαρκτές διδακτικές αρετές της Python, όμως βασικό μέλημα είναι να καταδειχθούν οι προχειρότητες της έκδοσης του συμπληρωματικού υλικού.
*** χωρίς σόρι για το σεντόνι, με το ζόρι δεν διάβασε κανείς.