Professional Documents
Culture Documents
Είναι ένα σύνολο αποθηκευμένων δεδομένων που υφίστανται επεξεργασία από ένα σύνολο
λειτουργιών.
Ποιες είναι οι βασικές πράξεις-λειτουργίες που μπορούν να γίνουν σε μια δομή δεδομένων (8);
Ποια η εξάρτηση που υπάρχει μεταξύ της δομής δεδομένων και του αλγορίθμου που επεξεργάζεται τη δομή;
Υπάρχει μεγάλη εξάρτηση μεταξύ της δομής δεδομένων και του αλγορίθμου
που επεξεργάζεται τη δομή. Το πρόγραμμα πρέπει να θεωρεί τη δομή
δεδομένων και τον αλγόριθμο ως μία αδιάσπαστη ενότητα. Η παρατήρηση
αυτή δικαιολογεί την εξίσωση που διατυπώθηκε το 1976 από τον Wirth (που
σχεδίασε και υλοποίησε τη γλώσσα Pascal).
σελίδα 1
Ποια είναι τα χαρακτηριστικά των δυναμικών δομών δεδομένων (2);
Οι δομές αυτές δεν έχουν σταθερό μέγεθος, αλλά ο αριθμός των κόμβων τους
μεγαλώνει και μικραίνει καθώς στη δομή εισάγονται νέα δεδομένα ή διαγράφονται
κάποια δεδομένα αντίστοιχα.
Ποια είναι τα χαρακτηριστικά των στατικών δομών δεδομένων και πώς υλοποιείται μία στατική δομή δεδομένων
Το ακριβές μέγεθος της απαιτούμενης κύριας μνήμης καθορίζεται κατά τη στιγμή του
προγραμματισμού τους, και κατά συνέπεια κατά τη στιγμή της μετάφρασής τους και
όχι κατά τη στιγμή της εκτέλεσης τους προγράμματος
Τα στοιχεία των στατικών δομών αποθηκεύονται σε συνεχόμενες θέσεις μνήμης.
έχουν σταθερό μέγεθος
ΣΤΑΤΙΚΕΣ ΔΥΝΑΜΙΚΕΣ
Είναι ένα σύνολο αντικειμένων ίδιου τύπου, τα οποία αναφέρονται με ένα κοινό όνομα.
Κάθε ένα από τα αντικείμενα που απαρτίζουν τον πίνακα λέγεται στοιχείο του πίνακα. Η
σελίδα 2
αναφορά σε ατομικά στοιχεία του πίνακα γίνεται με το όνομα του πίνακα ακολουθούμενο
από ένα δείκτη ή περισσότερους δείκτες.
Οι πίνακες που χρησιμοποιούν ένα μόνο δείκτη για την αναφορά των στοιχείων τους
ονομάζονται μονοδιάστατοι πίνακες.
Είναι μία ακέραια έκφραση, σταθερή ή μεταβλητή που περικλείεται μέσα στα σύμβολα [ και
] και μπορεί να έχει οποιοδήποτε αποδεκτό όνομα. Συνηθισμένα ονόματα μεταβλητών που
χρησιμοποιούνται για τους δείκτες ενός πίνακα είναι i, j, k.
Στατική.
Για ποιό λόγο χρησιμοποιούνται οι πίνακες (δηλαδή ποιο είναι το πλεονέκτημά τους);
Η χρήση πινάκων είναι ένας βολικός τρόπος για τη διαχείριση πολλών δεδομένων ιδίου
τύπου
σελίδα 3
Ποια τα μειονεκτήματα χρήσης των πινάκων (2);
Η χρήση πινάκων είναι ένας βολικός τρόπος για τη διαχείριση πολλών δεδομένων ιδίου
τύπου αλλά συχνά όμως η χρήση τους είναι περιττή και επιζήμια στην ανάπτυξη του
προγράμματος (μειονεκτήματα)
Οι πίνακες απαιτούν μνήμη. Κάθε πίνακας δεσμεύει από την αρχή του προγράμματος πολλές
θέσεις μνήμης. Σε ένα μεγάλο και σύνθετο πρόγραμμα η άσκοπη χρήση μεγάλων πινάκων
μπορεί να οδηγήσει ακόμη και σε αδυναμία εκτέλεσης του προγράμματος.
Οι πίνακες περιορίζουν τις δυνατότητες του προγράμματος. Αυτό γιατί οι πίνακες είναι
στατικές δομές και το μέγεθός τους πρέπει να δηλώνεται στην αρχή του προγράμματος, ενώ
παραμένει υποχρεωτικά σταθερό κατά την εκτέλεση του προγράμματος.
Ποιες είναι οι τυπικές επεξεργασίες που μπορούν να πραγματοποιηθούν σε έναν πίνακα (5); ,
Πολύ συχνά απαιτείται ο υπολογισμός του αθροίσματος στοιχείων του πίνακα που έχουν
κοινά χαρακτηριστικά, για παράδειγμα βρίσκονται στην ίδια στήλη ή στην ίδια γραμμή.
Η επιλογή του καλύτερου αλγορίθμου εξαρτάται κυρίως: (προσοχή μπορεί να είναι και
ξεχωριστή ερώτηση)
σειριακή
δυαδική
σελίδα 4
Η σειριακή μέθοδος αναζήτησης είναι η πιο απλή, αλλά και η λιγότερο αποτελεσματική
μέθοδος. Χρησιμοποιείται όμως υποχρεωτικά για πίνακες που δεν είναι ταξινομημένοι.
Αντίθετα η δυαδική αναζήτηση χρησιμοποιείται μόνο σε ταξινομημένους πίνακες και είναι
σαφώς αποδοτικότερη από τη σειριακή μέθοδο (βλέπε ερώτηση 114).
Με ποια κριτήρια παίρνεται η απόφαση για τη χρήση ή όχι πίνακα για τη διαχείριση δεδομένων;
Η απόφαση για τη χρήση ή όχι πίνακα για τη διαχείριση των είναι κυρίως θέμα εμπειρίας
στον προγραμματισμό.
Να αναφέρετε δύο λειτουργίες επί των δομών δεδομένων που δεν μπορούν να
χρησιμοποιηθούν στους πίνακες. Να αιτιολογήσετε την απάντησή σας.
Η εισαγωγή και η διαγραφή. Δεν είναι δυνατή η προσθήκη ή η διαγραφή κόμβων από έναν
πίνακα, καθότι ο πίνακας είναι στατική δομή δεδομένων και έχει σταθερό μέγεθος.
σελίδα 5