Δομές Δεδομένων- θεωρία

24
Στα πλαίσια του μαθήματος ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ (Κεφάλαιο 3 ο ) ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΑΝΤΩΝΙΑΔΟΥ ΜΑΡΙΑ , ΠΕ19

Upload: maria-antoniadou

Post on 24-Jun-2015

179 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Δομές Δεδομένων- θεωρία

Στα πλαίσια του μαθήματος ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ (Κεφάλαιο 3ο )

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ

ΑΝΤΩΝΙΑΔΟΥ ΜΑΡΙΑ , ΠΕ19

Page 2: Δομές Δεδομένων- θεωρία

ΔΕΔΟΜΕΝΑ

Μηχανισμοί επεξεργασίας : ανθρώπινος εγκέφαλος , υπολογιστής

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

Είσοδος δεδομένων

Επεξεργασία δεδομένων

Έξοδος πληροφορίας

Page 3: Δομές Δεδομένων- θεωρία

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ

Δομή δεδομένων ονομάζεται ένα σύνολο αποθηκευμένων δεδομένων που υφίστανται επεξεργασία από ένα σύνολο λειτουργιών .

Page 4: Δομές Δεδομένων- θεωρία

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ : Βασικές λειτουργίες

1. Προσπέλαση 5. Ταξινόμηση 2. Εισαγωγή 6. Αντιγραφή 3. Διαγραφή 7. Συγχώνευση 4. Αναζήτηση 8. Διαχωρισμός

Κόμβος ονομάζεται κάθε στοιχείο της δομής δεδομένων.

3412 23 45 89 7 4

Page 5: Δομές Δεδομένων- θεωρία

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ : Βασικές λειτουργίες

ΠΡΟΣΠΕΛΑΣΗ

3412 23 45 89 7 4

Πρόσβαση σε ένα κόμβο με σκοπό να εξετασθεί ή να τροποποιηθεί το περιεχόμενό του .

Page 6: Δομές Δεδομένων- θεωρία

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ : Βασικές λειτουργίες

ΕΙΣΑΓΩΓΗ

3412 23 45 89 7 4 15

Η προσθήκη νέου κόμβου ( ή περισσότερων κόμβων).

Page 7: Δομές Δεδομένων- θεωρία

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ : Βασικές λειτουργίες

ΔΙΑΓΡΑΦΗ

3412 23 45 89 7

Ένας κόμβος ή περισσότεροι κόμβοι αφαιρούνται.

4

Page 8: Δομές Δεδομένων- θεωρία

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ : Βασικές λειτουργίες

3412 23 45 89 7 4

ΑΝΑΖΗΤΗΣΗ

Αναζήτηση της τιμής 23 σε κάποιο κόμβο .

Page 9: Δομές Δεδομένων- θεωρία

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ : Βασικές λειτουργίες

3412 23 45 89 7 4

ΤΑΞΙΝΟΜΗΣΗ

Οι κόμβοι διατάσσονται κατά • αύξουσα σειρά : 4,7,12,23,34,45,89 ή • φθίνουσα σειρά : 89,45,34,23,12,7,4

Page 10: Δομές Δεδομένων- θεωρία

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ : Βασικές λειτουργίες

3412 23 45 89 7 4ΔΟΜΗ Α

3412 23 45 89 7 4ΔΟΜΗ Β

ΑΝΤΙΓΡΑΦΗ

Οι κόμβοι της δομής Α αντιγράφονται στη δομή Β.

Page 11: Δομές Δεδομένων- θεωρία

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ : Βασικές λειτουργίες

ΔΟΜΗ Α 3412 23 45

ΔΟΜΗ Β

89 7 4

ΔΟΜΗ Γ

3412 23 45 89 7 4

ΣΥΓΧΩΝΕΥΣΗ

Οι δομές Α και Β συνενώνονται σε μία ενιαία δομή Γ.

Page 12: Δομές Δεδομένων- θεωρία

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ : Βασικές λειτουργίες

ΔΟΜΗ Α 3412 23 45 89 7 4

ΔΟΜΗ Γ

89 7 4

ΔΟΜΗ Β 3412 23 45

ΔΙΑΧΩΡΙΣΜΟΣ

Η δομή Α διασπάται στις δομές Β και Γ .

Page 13: Δομές Δεδομένων- θεωρία

Το πρόγραμμα θεωρεί τον αλγόριθμο και τη δομή δεδομένων σαν μια αδιάσπαστη ενότητα .

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΛΓΟΡΙΘΜΟΣ

Page 14: Δομές Δεδομένων- θεωρία

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ : ΚΑΤΗΓΟΡΙΕΣ

Δεν αποθηκεύονται σε συνεχόμενες θέσεις μνήμης αλλά στηρίζονται στη Δυναμική Παραχώρηση Μνήμης .

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

Τα στοιχεία τους αποθηκεύονται σε συνεχόμενες θέσεις μνήμης .

Το μέγεθος τους καθορίζεται κατά τη στιγμή του προγραμματισμού και παραμένει σταθερό κατά τη διάρκεια εκτέλεσης του προγράμματος .

ΔΥΝΑΜΙΚΕΣ ΔΟΜΕΣ ΣΤΑΤΙΚΕΣ ΔΟΜΕΣ

Page 15: Δομές Δεδομένων- θεωρία

ΣΤΑΤΙΚΕΣ ΔΟΜΕΣ : Αποθήκευση δεδομένων

ΜΝΗΜΗ Η/Υ

23

3 17

6

ΔΕΔΟΜΕΝΑ

Αποθήκευση σε συνεχόμενες θέσεις μνήμης .

Page 16: Δομές Δεδομένων- θεωρία

ΔΥΝΑΜΙΚΕΣ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ : Αποθήκευση δεδομένων

ΜΝΗΜΗ Η/Υ

ΔΕΔΟΜΕΝΑ

23

3 17

6

Αποθήκευση σε μη συνεχόμενες θέσεις μνήμης .

Page 17: Δομές Δεδομένων- θεωρία

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ

• ΠΙΝΑΚΑΣ• ΣΤΟΙΒΑ• ΟΥΡΑ• ΕΓΓΡΑΦΗ• ΑΡΧΕΙΟ

Page 18: Δομές Δεδομένων- θεωρία

Yes

No

Μια δομή δεδομένων αφορά μόνο σε ένα σύνολο δεδομένων.

Page 19: Δομές Δεδομένων- θεωρία

Για την προσθήκη νέων στοιχείων (κόμβων)σε μια δομή δεδομένων χρησιμοποιείται η :

προσπέλαση

εισαγωγή

αναζήτηση

συγχώνευση

Page 20: Δομές Δεδομένων- θεωρία

Οι κόμβοι μιας δομής δεδομένων περιέχουν ακέραιες τιμές .Για να μετρήσουμε πόσοι

κόμβοι έχουν θετική τιμή , χρησιμοποιούμε την :

ταξινόμηση

αναζήτηση

αντιγραφή

προσπέλαση

Page 21: Δομές Δεδομένων- θεωρία

Για την εύρεση μιας συγκεκριμένης τιμής – κλειδί σε μια δομή δεδομένων χρησιμοποιούμε την :

προσπέλαση

ταξινόμηση

αναζήτηση

Τίποτε από τα παραπάνω .

Page 22: Δομές Δεδομένων- θεωρία

Yes

No

Σε μια στατική δομή μπορούμε να κάνουμε εισαγωγή στοιχείων , δεν μπορούμε όμως να κάνουμε διαγραφή .

Page 23: Δομές Δεδομένων- θεωρία

Yes

No

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

Page 24: Δομές Δεδομένων- θεωρία

Yes

No

Οι δυναμικές δομές δεδομένων έχουν μεταβλητό μέγεθος .