Δευτέρα 8 Ιουλίου 2013

Αφηρημένος Τύπος Δεδομένων (ΑΤΔ)

Ο όρος τύπος δεδομένων είναι γνωστός και αναφέρεται σε δύο θέματα. Το πρώτο αφορά στο είδος δεδομένων, χαρακτήρας, ακέραιος, πραγματικός κλπ. Το δεύτερο στις ενέργειες που επιτρέπονται στα δεδομένα αυτά. Για παράδειγμα η πρόσθεση ακεραίων δίνει αποτέλεσμα πάλι ακέραιο, είναι αποδεκτή ενέργεια στον τύπο δεδομένων ακέραιος, αλλά δεν έχει νόημα στον τύπο δεδομένων χαρακτήρας.

Ο προσδιορισμός αφηρημένος γενικεύει τα προηγούμενα και σημαίνει τον τύπο δεδομένων πέρα από τις αναλυτικές προδιαγραφές του ή τον τρόπο υλοποίησής του.

Ο ΑΤΔ αποτελεί βοηθητικό όρο στη σχεδίαση προγραμμάτων και μόνο ως βοηθητικό εργαλείο θεωρείται. Ο προγραμματιστής αναλογίζεται τις ενέργειες που θα υφίστανται τα δεδομένα, τις προσδιορίζει, τις αξιολογεί και τελικά επιλέγει τον κατάλληλο ΑΤΔ που θα αξιοποιήσει. Ύστερα
συλλογίζεται τις λεπτομέρειες της αναπαράστασης του και τον προγραμματισμό των ενεργειών διαχείρισής τους.

Παράδειγμα ο ΑΤΔ πίνακας, αποτελεί σύνολο ζευγών από τιμές (δείκτης, περιεχόμενο) με μοναδικό δείκτη. Οι επιτρεπτές ενέργειες του είναι η δημιουργία του, η εισαγωγή και η ανάκτηση των τιμών.

Πλεονεκτήματα των ΑΔΤ

Οι ΑΔΤ διαθέτουν τα χαρακτηριστικά της:

1. Γενίκευσης δεν υπεισέρχεται στο είδος των δεδομένων ούτε και στον ορισμό των επιτρεπτών πράξεων.

2. Ειδίκευσης ο ίδιος ΑΤΔ μπορεί να εξειδικευτεί ανάλογα σε κάθε εφαρμογή.

3. Τοπικότητας η υλοποίηση του ΑΤΔ μπορεί να επιλεγεί ανάλογα με την περίσταση.

4. Απόκρυψης Πληροφορίας ο προγραμματιστής ενδιαφέρεται μόνο για το αποτέλεσμα της αξιοποίησης του ΑΤΔ που επέλεξε και δεν τον απασχολεί ο τρόπος υλοποίησής του. Την υλοποίηση θα την αποκτήσει από κατάλληλη βιβλιοθήκη.

5. Ενθυλάκωσης τα χαρακτηριστικά και οι επιτρεπτές ενέργειες του ΑΔΤ ορίζονται μέσα σε αυτόν, και εφαρμόζονται μόνο σε σχέση με το συγκεκριμένο ΑΤΔ.


Σχέσεις μελών στους ΑΤΔ

Οι ΑΤΔ μπορούν να κατηγοριοποιηθούν και σύμφωνα με τη δομική σχέση των στοιχείων τους

Γραμμική Σχέση: Κάθε στοιχείο του ΑΤΔ έχει το πολύ ένα άμεσο προηγούμενο και το πολύ ένα άμεσο επόμενο στοιχείο. Εκτός από το πρώτο που δεν έχει προηγούμενο και το τελευταίο που δεν έχει επόμενο.

Ιεραρχική Σχέση: Κάθε στοιχείο του ΑΤΔ έχει το πολύ ένα άμεσο προηγούμενο και ένα ή περισσότερα επόμενα στοιχεία. Εκτός από το πρώτο που δεν έχει προηγούμενο (ρίζα) και τα τελευταία που δεν έχουν επόμενα (φύλλα).

Σχέση Δικτύου: Κάθε στοιχείο του ΑΤΔ έχει ένα ή περισσότερα άμεσα προηγούμενα και ένα ή περισσότερα επόμενα στοιχεία.

Σχέση Συνόλου: Τα στοιχεία του ΑΤΔ δεν έχουν καμιά εγγενή σχέση ταξινόμησης. Π.χ. {κόκκινο, πράσινο, μπλε}


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

Στα πλαίσια του μαθήματος θα μελετηθούν οι πιο κάτω εσωτερικές δομές δεδομένων (Ram) :
Πίνακας - Λίστα - Ουρά

Στοίβα - Δένδρο - Γράφοι

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

Ο ΑΤΔ ακέραιος

Ο ΑΤΔ με βάση τα προηγούμενα ορίζεται από τα Χαρακτηριστικά:

Τιμή

Διεύθυνση

Επιτρεπτές ενέργειες

Καταχώρηση (τιμή)

Πρόσθεση (ακέραιος, ακέραιος) : ακέραιος

Αφαίρεση (ακέραιος, ακέραιος) : ακέραιος

Πολλαπλασιασμός (ακέραιος, ακέραιος) : ακέραιος

Ακέραια Διαίρεση (ακέραιος, ακέραιος) : ακέραιος

Υπόλοιπο (ακέραιος, ακέραιος) : ακέραιος

Μηδέν? (ακέραιος): λογικό

Θετικός? (ακέραιος): λογικό


Ο ΑΤΔ πραγματικός

Ο ΑΤΔ με βάση τα προηγούμενα ορίζεται από τα Χαρακτηριστικά:

Τιμή

Διεύθυνση 

Επιτρεπτές ενέργειες

Καταχώρηση (τιμή)

Πρόσθεση (πραγματικός, πραγματικός) : πραγματικός

Αφαίρεση (πραγματικός, πραγματικός) : πραγματικός

Πολλαπλασιασμός (πραγματικός, πραγματικός) : πραγματικός

Διαίρεση (πραγματικός, πραγματικός) : πραγματικός

Μηδέν? (ακέραιος): λογικό

Θετικός? (ακέραιος): λογικό

Ο ΑΤΔ χαρακτήρας

Ο ΑΤΔ με βάση τα προηγούμενα ορίζεται από τα Χαρακτηριστικά:

Τιμή

Διεύθυνση

Επιτρεπτές ενέργειες

Καταχώρηση (τιμή)

Κωδικός (χαρακτήρα) : ακέραιος

Θετικός? Κωδικός (χαρακτήρα) = Αληθές

Προσδιορισμός Χαρακτήρα (ακέραιος) : χαρακτήρας


Ο ΑΤΔ μονοδιάστατος πίνακας

Χαρακτηριστικά:

Μήκος

Αρχικό στοιχείο 

Επιτρεπτές ενέργειες

Δημιουργία () : πίνακας

Καταχώρηση (δείκτης, τιμή) : πίνακας

Ανάκτηση (δείκτης) : στοιχείο

Αναζήτηση (τιμή) : δείκτης

Διαγραφή (τιμή) : πίνακας μετατόπιση στοιχείων

Ιδιαίτερη προσοχή και αντιμετώπιση πρέπει να επιδειχθεί στην περίπτωση διπλών εγγραφών, δηλαδή καταχωρήσεις στοιχείων με ίδια τιμή. Τότε διαφοροποιείται η διαδικασία αναζήτησης και διαγραφής στοιχείων


Ο ΑΤΔ συμβολοσειρά

Χαρακτηριστικά:

•Μήκος 

Επιτρεπτές ενέργειες

Δημιουργία() : συμβολοσειρά

Εύρεση Μήκους (συμβολοσειρά) : ακέραιος

Ανάκτηση (συμβολοσειρά) : χαρακτήρας

Προσάρτηση τέλος (συμβολοσειρά1, χαρακτήρας) : συμβολοσειρά2

Διαγραφή Πρώτου (συμβολοσειρά 1) : συμβολοσειρά2

Αντιγραφή (συμβολοσειρά 1) : συμβολοσειρά2

Συνένωση (συμβολοσειρά1, συμβολοσειρά2) : συμβολοσειρά3

Αναζήτηση (συμβολοσειρά 1, συμβολοσειρά2) : ακέραιος

Εισαγωγή (συμβολοσειρά 1, συμβολοσειρά2) : συμβολοσειρά3

Αντικατάσταση (συμβολοσειρά1, συμβολοσειρά2) : συμβολοσειρά3

Απομάκρυνση (συμβολοσειρά1, πλήθος) : συμβολοσειρά2

Σύγκριση (συμβολοσειρά1, συμβολοσειρά2, τελεστής) : λογικό


Ο ΑΤΔ σύνολο

Χαρακτηριστικά:

Πλήθος Στοιχείων 

Επιτρεπτές ενέργειες

Δημιουργία() : σύνολο

Εισαγωγή (σύνολο1, στοιχείο) : σύνολο2

Διαγραφή (σύνολο 1, στοιχείο) : σύνολο2

Μέλος? (σύνολο, στοιχείο) : λογικό

Κενό? (σύνολο) : λογικό

Ίσα? (σύνολο 1, σύνολο2) : λογικό

Υποσύνολο? (σύνολο 1, σύνολο2) : λογικό

Ένωση (σύνολο 1, σύνολο2) : σύνολο3

• Τομή (σύνολο1, σύνολο2) : σύνολο3

Διαφορά (σύνολο1, σύνολο2) : σύνολο3

Προσδιορισμός Πλήθους Στοιχείων (σύνολο) : ακέραιος

ΣΙΝΑΤΚΑΣΙ.


by: Πληροφορική Online
Πληροφορική Online Updated at: 4:55 π.μ.
◄ Newer Post Older Post ►