Αφηρημένες Δομές Δεδομένων. Στοίβα (Stack) Υλοποίηση στοίβας

Save this PDF as:
 WORD  PNG  TXT  JPG

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Αφηρημένες Δομές Δεδομένων. Στοίβα (Stack) Υλοποίηση στοίβας"

Transcript

1 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) (γράφοι και δένδρα) Μ.Στεφανιδάκης φηρημένες ομές εδομένων Abstract Data Types (ADTs) φηρημένα μοντέλα δομών δεδομένων Χωρίς τις λεπτομέρειες υλοποίησης! Προσδιορίζονται μόνο από τις λειτουργίες που εφαρμόζονται σε αυτά Στη συνέχεια μια γλώσσα προγραμματισμού χρησιμοποιώντας συγκεκριμένες δομές όπως οι πίνακες ή οι διασυνδεδεμένες λίστες προσφέρει υλοποιήσεις των αφηρημένων δομών δεδομένων ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 2 Στοίβα (Stack) Υλοποίηση στοίβας Μια βοηθητική αφηρημένη δομή δεδομένων κολουθία δεδομένων Με τη γνωστή λειτουργία LIFO (Last-In-First- Out): θα πάρουμε πρώτο ό,τι βάλαμε στη στοίβα τελευταίο Λειτουργίες Ώθηση (push) εισαγωγή στοιχείου στην κορυφή πώθηση (pop) εξαγωγή στοιχείου από την κορυφή push και pop από την ίδια άκρη! Με τη χρήση πίνακα (array) ποδοτικό σχήμα όταν Η ώθηση και η απώθηση γίνεται στο τέλος του πίνακα Η πολυπλοκότητα είναι O(1) και στις δύο περιπτώσεις! ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 3 ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 4

2 Ουρά (Queue) Μια άλλη βοηθητική αφηρημένη δομή δεδομένων Πρόκειται επίσης για ακολουθία δεδομένων Με λειτουργία FIFO (First-In-First-Out): θα πάρουμε πρώτο ό,τι βάλαμε στην ουρά πρώτο Λειτουργίες ισαγωγή (enqueue) εισαγωγή στοιχείου στη μία άκρη ξαγωγή (dequeue) εξαγωγή στοιχείου από την άλλη άκρη enqueue και dequeue από διαφορετικές άκρες! εισαγωγή Υλοποίηση ουράς Η φυσική υλοποίηση είναι με διπλά διασυνδεδεμένη λίστα Ξέρουμε και τις δύο άκρες και μπορούμε να διασχίσουμε τη λίστα και προς τις δύο κατευθύνσεις ισαγωγή και εξαγωγή με O(1) Όμως Σε πολλά συστήματα η ουρά υλοποιείται ως κυκλικός πίνακας πεπερασμένο μέγεθος, η άκρη εξαγωγής κυνηγά την άκρη εισαγωγής και οι δύο άκρες, στο τέλος του πίνακα εξαγωγή επιστρέφουν στην αρχή! ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 5 ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 6 ράφοι (Graphs) ράφοι (Graphs) Ένα από τα βασικότερα αλγοριθμικά εργαλεία Πάρα πολλά προβλήματα ανάγονται σε γράφους και στη συνέχεια επιλύονται με αλγορίθμους γράφων! Έννοιες γράφων Ένα σύνολο κορυφών (κόμβων - nodes) που διασυνδέονται μέσω ακμών (edges). Οι ακμές μπορούν να έχουν κατεύθυνση ή όχι Προσανατολισμένοι και μη γράφοι (directed & undirected graphs) Οι ακμές μπορούν να έχουν βάρη ή όχι Έννοιες γράφων Οι κορυφές που ενώνει μια ακμή ονομάζονται γειτονικές (adjacent) ιαδρομή (path) είναι μία ακολουθία κορυφών, η μία γειτονική με την επόμενη Χωρίς να επισκεφτούμε ξανά κάποια από τις κορυφές αυτές ν η διαδρομή τελειώνει στην αρχική κορυφή, πρόκειται για κύκλο (cycle) Τυπικά, τουλάχιστον τρεις κορυφές Ένας γράφος είναι συνδεδεμένος αν μπορούμε από κάθε κορυφή να μεταβούμε σε κάθε άλλη ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 7 ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 8

3 Υλοποίηση γράφων (1) Υλοποίηση γράφων (2) Λίστα γειτνίασης (adjacency list) ια κάθε κορυφή του γράφου ιατηρούμε μια λίστα με όλες τις γειτονικές κορυφές νδεχομένως και το βάρος της ακμής (αν υπάρχει),,,,,,, Πίνακας γειτνίασης (adjacency matrix) NxN πίνακας, πληροφορία για κάθε ζεύγος κορυφών ν ο γράφος είναι μη προσανατολισμένος, ο πίνακας είναι συμμετρικός ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 9 ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 10 ιάσχιση ράφου (Graph Traversal) ιάσχιση με προτεραιότητα βάθους Πολύ συχνά η επίλυση ενός προβλήματος απαιτεί την εύρεση μιας σωστής διαδρομής μεταξύ δύο κορυφών Σωστή : με τα κριτήρια του εκάστοτε προβλήματος ναζητώντας τη διαδρομή αυτή πρέπει αλγοριθμικά να διασχίσουμε τον γράφο Ξεκινώντας από μία κορυφή πισκεπτόμενοι διάφορες άλλες κορυφές (ενδεχομένως όλες) ν ο γράφος έχει κύκλους Πρέπει να εξασφαλιστεί ότι δεν θα επισκεφθούμε ξανά τον ίδιο κόμβο! Depth-First Search (DFS) Η ιδέα της αναδρομικής επίσκεψης των γειτόνων: visit(node) { } if not_visited(node) { for each neighbor visit(neighbor) } Μπορεί να υλοποιηθεί επαναληπτικά με τη βοήθεια στοίβας Όταν επισκεφθούμε μια κορυφή, αν δεν την έχουμε ήδη επισκεφτεί, ωθούμε στη στοίβα όλους τους γείτονές της πό τη στοίβα παίρνουμε τον στόχο της επόμενής μας επίσκεψης, έως ότου δεν υπάρχουν άλλοι ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 11 ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 12

4 Παράδειγμα διάσχισης DFS ιάσχιση με προτεραιότητα εύρους ια τον γράφο του σχήματος Και την εικονιζόμενη λίστα γειτνίασης Η σειρά επίσκεψης ξεκινώντας από τον είναι Τι θα συμβεί αν αντικαταστήσουμε τη στοίβα του προηγούμενου αλγορίθμου με μια ουρά; Breadth-First Search (BFS),,,,,,, Πρακτικά: πισκεπτόμαστε πρώτα τις κορυφές που βρίσκονται κοντύτερα στην αρχή σε ζώνες (επίπεδα) απόστασης από εκεί που ξεκινήσαμε Η BFS θα βρει λύσεις με συντομότερες διαδρομές (shortest paths) απαιτεί μεγαλύτερο χώρο αποθήκευσης ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 13 ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 14 Παράδειγμα διάσχισης BFS ένδρα (Trees) ια τον γράφο του σχήματος Και την εικονιζόμενη λίστα γειτνίασης Η σειρά επίσκεψης ξεκινώντας από τον είναι,,,,,,, ένδρα ρίζα φύλλα Υποκατηγορία γράφων Συνδεδεμένοι και χωρίς κύκλους γράφοι Με πολλές αλγοριθμικές εφαρμογές, ιδίως στην Έννοιες δένδρων: ιασυνδεδεμένοι κόμβοι (nodes), με προγόνους και απογόνους στην κορυφή η ρίζα (root) και στο τέλος τα φύλλα (leaves) siblings: κόμβοι με τον ίδιο πατέρα πίπεδο κόμβου: η απόστασή του από τη ρίζα Ύψος δένδρου: το μήκος (σε κόμβους) της μέγιστης διαδρομής ρίζα-φύλλο ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 15 ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 16

5 Υλοποίηση δένδρων ιάσχιση δένδρων ένδρα εν υπάρχει ένας και μοναδικός τρόπος νάλογα με το είδος του δένδρου Υπάρχουν πολλοί τύποι δένδρων νάλογα με το πρόβλημα που καλούνται να λύσουν Σε γενικές γραμμές Σύνολο διασυνδεδεμένων πινάκων (arrays) αποθηκεύουν τα δεδομένα κάθε κόμβου, τις διασυνδέσεις με τα παιδιά του κόμβου, και όποιες άλλες πληροφορίες διαχείρισης του δένδρου ένδρα Τα δένδρα είναι υποκατηγορία γράφων Συνεπώς μπορούμε να εφαρμόσουμε οποιαδήποτε τεχνική διάσχισης (π.χ. DFS ή BFS) Σε κάθε κόμβο μπορούμε να εφαρμόσουμε κάποια μορφή επεξεργασίας πεξεργασία κατά τη διάσχιση DFS Preorder: πριν προχωρήσουμε στα παιδιά του Postorder: αφού επιστρέψουμε από την επεξεργασία των παιδιών ιδικά για δυαδικά δένδρα (όχι πάνω από δύο παιδιά): inorder επεξεργασία, αριστερό παιδί - κόμβος - δεξί παιδί ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 17 ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 18 Παράδειγμα επεξεργασίας σε διάσχιση DFS Η δυαδική (ξανά) ένδρα * Preorder: * Postorder: * Inorder: * 3 - Ποια σειρά επεξεργασίας αποδίδει το αριθμητικό νόημα του δένδρου; ένδρα υαδική Έχουμε ήδη δει την ισχύ της δυαδικής ς Η δύναμη του log 2 n στη γρήγορη εύρεση σε μεγάλο αριθμό δεδομένων Όμως Χρειαζόμαστε ταξινομημένους πίνακες Πόσο εύκολο αν τα δεδομένα αλλάζουν συνεχώς; Και οι διασυνδεδεμένες λίστες δεν αποτελούν λύση πώλεια του O(1) για την εύρεση (ή μη) ενός στοιχείου Τι άλλο μπορούμε να κάνουμε; ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 19 ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 20

6 Πρώτη λύση: αποφυγή ς! εύτερη λύση: δένδρα δυαδικής ς ένδρα υαδική Μέθοδος κατακερματισμού (hashing) ια εύρεση κλειδιού (membership test) ή αντιστοίχιση κλειδιού-τιμής (mapping) χωρίς Πώς γίνεται; Κάθε κλειδί μετατρέπεται σε έναν αριθμό μέσω συνάρτησης κατακερματισμού (hash function) ο αριθμός αυτός (ή κάποια bits αυτού) χρησιμοποιούνται ως δείκτης i σε έναν πίνακα ιαλέγουμε συναρτήσεις που κατανέμουν ομοιόμορφα τα κλειδιά στις θέσεις του πίνακα ναλλακτικές θέσεις σε περίπτωση σύγκρουσης (collision) Πολυπλοκότητα (σχεδόν) O(1)! ένδρα υαδική υαδικά δένδρα με τοποθέτηση των κλειδιών σε κάθε κόμβο Με τη σημαντική ιδιότητα: όλα τα κλειδιά στο αριστερό υποδένδρο είναι μικρότερα (ή ίσα) από το κλειδί του κόμβου Και όλα τα κλειδιά στο δεξί υποδένδρο είναι μεγαλύτερα από το κλειδί του κόμβου ναζήτηση Σε κάθε βήμα, συγκρίνουμε την επιθυμητή τιμή με το κλειδί του τρέχοντος κόμβου και στη συνέχεια προχωράμε ανάλογα στο αριστερό ή στο δεξί υποδένδρο από τη ρίζα προς τα φύλλα σε λογαριθμικό χρόνο ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 21 ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 22 εύτερη λύση: δένδρα δυαδικής ς ένδρα υαδική νέου στοιχείου ναζητούμε το σημείο όπου θα έπρεπε να είναι το νέο στοιχείο Και το εισάγουμε στην κατάλληλη θέση Προσοχή: η μορφή του δένδρου εξαρτάται από τη σειρά εισαγωγής των στοιχείων Ισορροπία (balance( balance) ) δένδρου Το απλό δυαδικό δένδρο μετά από εισαγωγή νέων στοιχείων μπορεί να πάψει να έχει ισορροπία (να είναι ομοιόμορφα επεκταμένο) Η απόδοση της ς μειώνεται Υπάρχουν εξελιγμένες μορφές δένδρων που φροντίζουν για τη διατήρηση της ισορροπίας τους κατά την εισαγωγή ή διαγραφή στοιχείων ισαγωγή στην πιστήμη των Υπολογιστών λγόριθμοι και ομές εδομένων (IΙ) 23

Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα)

Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2016-17 Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα) http://mixstef.github.io/courses/csintro/ Μ.Στεφανιδάκης Αφηρημένες

Διαβάστε περισσότερα

Βασικές Δοµές Δεδοµένων. Σύντοµη επανάληψη (ΕΠΛ 035).

Βασικές Δοµές Δεδοµένων. Σύντοµη επανάληψη (ΕΠΛ 035). Βασικές Δοµές Δεδοµένων Σύντοµη επανάληψη (ΕΠΛ 035). Περίληψη Γραµµικές Δοµές Δεδοµένων Πίνακες Λίστες Στοίβες Ουρές Γράφοι Δέντρα Γραµµικές Δοµές Πίνακας (array) A[0] A[1] A[2] A[ ] A[n-1] Προκαθορισµένη

Διαβάστε περισσότερα

ιαφάνειες παρουσίασης #11

ιαφάνειες παρουσίασης #11 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ http://www.corelab.ece.ntua.gr/courses/programming/ ιδάσκοντες: Στάθης Ζάχος (zachos@cs.ntua.gr) Νίκος Παπασπύρου (nickie@softlab.ntua.gr) ιαφάνειες παρουσίασης

Διαβάστε περισσότερα

Οι δυναμικές δομές δεδομένων στην ΑΕΠΠ

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

Διαβάστε περισσότερα

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 6. Δυαδικά Δέντρα 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 18/11/2016 Εισαγωγή Τα

Διαβάστε περισσότερα

Στοιχεία Θεωρίας Γράφων (Graph Theory)

Στοιχεία Θεωρίας Γράφων (Graph Theory) Στοιχεία Θεωρίας Γράφων (Graph Theory) Ε Εξάμηνο, Τμήμα Πληροφορικής & Τεχνολογίας Υπολογιστών ΤΕΙ Λαμίας plam@inf.teilam.gr, Οι διαφάνειες βασίζονται στα βιβλία:. Αλγόριθμοι, Σχεδιασμός & Ανάλυση, η έκδοση,

Διαβάστε περισσότερα

Βασικές δοµές δεδοµένων. Ορολογία λιστών. 8.1 Βασικές έννοιες δοµών δεδοµένων 8.2 Υλοποίηση δοµών δεδοµένων 8.3 Μια σύντοµη υπόθεση εργασίας

Βασικές δοµές δεδοµένων. Ορολογία λιστών. 8.1 Βασικές έννοιες δοµών δεδοµένων 8.2 Υλοποίηση δοµών δεδοµένων 8.3 Μια σύντοµη υπόθεση εργασίας ΚΕΦΑΛΑΙΟ 8: Αφηρηµένοι τύποι δεδοµένων 8.1 οµές δεδοµένων (data structures) 8.1 Βασικές έννοιες δοµών δεδοµένων 8.2 Υλοποίηση δοµών δεδοµένων 8.3 Μια σύντοµη υπόθεση εργασίας Αδόµητα δεδοµένα οδός Ζέας

Διαβάστε περισσότερα

Διδάσκων: Παναγιώτης Ανδρέου

Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 12: Δέντρα ΙΙ -Δυαδικά Δέντρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Δυαδικά Δένδρα - Δυαδικά Δένδρα Αναζήτησης(ΔΔΑ) - Εύρεση Τυχαίου, Μέγιστου, Μικρότερου στοιχείου - Εισαγωγή

Διαβάστε περισσότερα

2.2.5 ΑΝΑΠΑΡΑΣΤΑΣΗ ΑΛΓΟΡΙΘΜΟΥ

2.2.5 ΑΝΑΠΑΡΑΣΤΑΣΗ ΑΛΓΟΡΙΘΜΟΥ 2.2.5 ΑΝΑΠΑΡΑΣΤΑΣΗ ΑΛΓΟΡΙΘΜΟΥ ΑΝΑΠΑΡΑΣΤΑΣΗ ΑΛΓΟΡΙΘΜΟΥ Προκειμένου να επιτευχθεί η «ακριβής περιγραφή» ενός αλγορίθμου, χρησιμοποιείται κάποια γλώσσα που μπορεί να περιγράφει σειρές ενεργειών με τρόπο αυστηρό,

Διαβάστε περισσότερα

Οι λίστες, χάνοντας τα πλεονεκτήματα των πινάκων, λύνουν προβλήματα που παρουσιάζουν οι πίνακες

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

Διαβάστε περισσότερα

Δομές Δεδομένων και Αλγόριθμοι

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 Παρουσίαση 1 Εισαγωγή 1 / 14 Δομές Δεδομένων και Αλγόριθμοι Δομή Δεδομένων Δομή δεδομένων είναι ένα σύνολο αποθηκευμένων

Διαβάστε περισσότερα

οµές εδοµένων 3 ο Εξάµηνο ΕΝΟΤΗΤΑ 4 ΕΝ ΡΑ

οµές εδοµένων 3 ο Εξάµηνο ΕΝΟΤΗΤΑ 4 ΕΝ ΡΑ ΕΝΟΤΗΤΑ 4 ΕΝ ΡΑ 1 ένδρα εσωτερικός κόµβος u το δένδρο έχει ύψος 4 u έχει ύψος 3 w έχει βάθος 2 κόµβος ένδρο: γράφηµα χωρίς κύκλους o Ρίζα (root) o Κόµβος (node) o Ακµή (edge) o Γονέας (parent) Παιδί (child)

Διαβάστε περισσότερα

Δομές Δεδομένων (Data Structures)

Δομές Δεδομένων (Data Structures) Δομές Δεδομένων (Data Structures) Στοίβες Ουρές Στοίβες: Βασικές Έννοιες. Ουρές: Βασικές Έννοιες. Βασικές Λειτουργίες. Παραδείγματα. Στοίβες Δομή τύπου LIFO: Last In - First Out (τελευταία εισαγωγή πρώτη

Διαβάστε περισσότερα

ΠΑΡΑΡΤΗΜΑ: QUIZ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ

ΠΑΡΑΡΤΗΜΑ: QUIZ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΠΑΡΑΡΤΗΜΑ: QUIZ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ (Οι ερωτήσεις µε κίτρινη υπογράµµιση είναι εκτός ύλης για φέτος) ΕΙΣΑΓΩΓΗ Q1. Οι Πρωταρχικοί τύποι (primitive types) στη Java 1. Είναι όλοι οι ακέραιοι και όλοι οι πραγµατικοί

Διαβάστε περισσότερα

ΔΙΑΣΧΙΣΗ ΓΡΑΦΗΜΑΤΩΝ 1

ΔΙΑΣΧΙΣΗ ΓΡΑΦΗΜΑΤΩΝ 1 ΔΙΑΣΧΙΣΗ ΓΡΑΦΗΜΑΤΩΝ 1 Θέματα μελέτης Πρόβλημα αναζήτησης σε γραφήματα Αναζήτηση κατά βάθος (Depth-first search DFS) Αναζήτηση κατά πλάτος (Breadth-first search BFS) 2 Γράφημα (graph) Αναπαράσταση συνόλου

Διαβάστε περισσότερα

Διάλεξη 22: Δυαδικά Δέντρα. Διδάσκων: Παναγιώτης Ανδρέου

Διάλεξη 22: Δυαδικά Δέντρα. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 22: Δυαδικά Δέντρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Δυαδικά Δένδρα - Δυαδικά Δένδρα Αναζήτησης - Πράξεις Εισαγωγής, Εύρεσης Στοιχείου, Διαγραφής Μικρότερου Στοιχείου

Διαβάστε περισσότερα

Διάλεξη 29: Γράφοι. Διδάσκων: Παναγιώτης Ανδρέου

Διάλεξη 29: Γράφοι. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 9: Γράφοι Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Γράφοι - ορισμοί και υλοποίηση - Διάσχιση Γράφων Διδάσκων: Παναγιώτης νδρέου ΕΠΛ035 Δομές Δεδομένων και λγόριθμοι για Ηλ. Μηχ.

Διαβάστε περισσότερα

6η Διάλεξη Διάσχιση Γράφων και Δέντρων

6η Διάλεξη Διάσχιση Γράφων και Δέντρων ΘΕΩΡΙΑ ΓΡΑΦΩΝ 6 η Διάλεξη Διάσχιση Γράφων και Δέντρων Αλγόριθμος αναζήτησης σε Βαθος Αλγόριθμος αναζήτησης κατά Πλάτος Αλγόριθμοι για Δένδρα Εύρεση ελαχίστων Γεννητορικών (Επικαλύπτοντα) Δένδρων Διάσχιση

Διαβάστε περισσότερα

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 3. Στοίβες & Ουρές 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 4/11/2016 Ανακεφαλαίωση:

Διαβάστε περισσότερα

1 Διάσχιση κατευθυνόμενων γραφημάτων

1 Διάσχιση κατευθυνόμενων γραφημάτων ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΛΑΜΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2010 11 Ιστοσελίδα μαθήματος: http://eclass.teilam.gr/di288 5ο ΕΡΓΑΣΤΗΡΙΟ

Διαβάστε περισσότερα

Γράφημα. Συνδυαστικό αντικείμενο που αποτελείται από 2 σύνολα: Σύνολο κορυφών (vertex set) Σύνολο ακμών (edge set) 4 5 πλήθος κορυφών πλήθος ακμών

Γράφημα. Συνδυαστικό αντικείμενο που αποτελείται από 2 σύνολα: Σύνολο κορυφών (vertex set) Σύνολο ακμών (edge set) 4 5 πλήθος κορυφών πλήθος ακμών Γράφημα Συνδυαστικό αντικείμενο που αποτελείται από 2 σύνολα: Σύνολο κορυφών (vertex set) Σύνολο ακμών (edge set) 1 2 3 4 5 πλήθος κορυφών πλήθος ακμών Γράφημα Συνδυαστικό αντικείμενο που αποτελείται από

Διαβάστε περισσότερα

ΑΛΓΟΡΙΘΜΟΙ Άνοιξη I. ΜΗΛΗΣ

ΑΛΓΟΡΙΘΜΟΙ  Άνοιξη I. ΜΗΛΗΣ ΑΛΓΟΡΙΘΜΟΙ http://eclass.aueb.gr/courses/inf161/ Άνοιξη 2017 - I. ΜΗΛΗΣ AΛΓΟΡΙΘΜΟΙ ΓΡΑΦΩΝ Ι ΕΞΕΡΕΥΝΗΣΗ 1 Graphs Ανά ζεύγη (pairwise) σχέσεις μεταξύ των στοιχείων ενός συνόλου 2 Graphs Εφαρμογές Χάρτες,

Διαβάστε περισσότερα

Δομές Δεδομένων. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων. Τμήμα Εφαρμοσμένης Πληροφορικής

Δομές Δεδομένων. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων. Τμήμα Εφαρμοσμένης Πληροφορικής Ενότητα 8: Γραμμική Αναζήτηση και Δυαδική Αναζήτηση-Εισαγωγή στα Δέντρα και Δυαδικά Δέντρα-Δυαδικά Δέντρα Αναζήτησης & Υλοποίηση ΔΔΑ με δείκτες Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 23: οµές εδοµένων και Αλγόριθµοι Ενδιάµεση Εξέταση Ηµεροµηνία : ευτέρα, 3 Νοεµβρίου 2008 ιάρκεια : 2.00-4.00 ιδάσκουσα : Άννα Φιλίππου Ονοµατεπώνυµο: ΣΚΕΛΕΤΟΙ

Διαβάστε περισσότερα

Δένδρα. Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα:

Δένδρα. Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Δένδρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή σε δενδρικές δομές δεδομένων, ορισμοί, πράξεις και αναπαράσταση στη μνήμη ΔυαδικάΔένδρακαιΔυαδικάΔένδραΑναζήτησης ΕΠΛ 231 Δομές

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ 1 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΚΕΦΑΛΑΙΟ 3ο: ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ ΜΕΡΟΣ 2 ο : ΣΤΟΙΒΑ & ΟΥΡΑ ΙΣΤΟΣΕΛΙΔΑ ΜΑΘΗΜΑΤΟΣ: http://eclass.sch.gr/courses/el594100/ ΣΤΟΙΒΑ 2 Μια στοίβα

Διαβάστε περισσότερα

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών 4 ο εξάμηνο ΣΗΜΜΥ 4 η ενότητα: Γράφοι: προβλήματα και αλγόριθμοι Επιμέλεια διαφανειών: Στάθης Ζάχος, Άρης Παγουρτζής, Δημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών

Διαβάστε περισσότερα

Διάλεξη 12: Δέντρα ΙΙ Δυαδικά Δέντρα

Διάλεξη 12: Δέντρα ΙΙ Δυαδικά Δέντρα Διάλεξη 12: Δέντρα ΙΙ Δυαδικά Δέντρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Δυαδικά Δένδρα Δυαδικά Δένδρα Αναζήτησης (ΔΔΑ) Εύρεση Τυχαίου, Μέγιστου, Μικρότερου στοιχείου Εισαγωγή στοιχείου

Διαβάστε περισσότερα

ΑΛΓΟΡΙΘΜΟΙ ΜΕ C. ΝΙΚΟΛΑΟΣ ΣΑΜΑΡΑΣ Αναπληρωτής Καθηγητής. CMOR Lab. Computational Methodologies and Operations Research

ΑΛΓΟΡΙΘΜΟΙ ΜΕ C. ΝΙΚΟΛΑΟΣ ΣΑΜΑΡΑΣ Αναπληρωτής Καθηγητής. CMOR Lab. Computational Methodologies and Operations Research ΑΛΓΟΡΙΘΜΟΙ ΜΕ C ΝΙΚΟΛΑΟΣ ΣΑΜΑΡΑΣ Αναπληρωτής Καθηγητής CMOR Lab Computational Methodologies and Operations Research Δέντρα (5) Τ ένα δέντρο i ένας κόμβος στο επίπεδο k j ένας κόμβος στο επίπεδο k+1 } :

Διαβάστε περισσότερα

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 12. Ανασκόπηση 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 13/01/2017 Εξεταστέα Ύλη

Διαβάστε περισσότερα

Δένδρα. Μαθηματικά (συνδυαστικά) αντικείμενα. Έχουν κεντρικό ρόλο στην επιστήμη των υπολογιστών :

Δένδρα. Μαθηματικά (συνδυαστικά) αντικείμενα. Έχουν κεντρικό ρόλο στην επιστήμη των υπολογιστών : Δένδρα Μαθηματικά (συνδυαστικά) αντικείμενα. Έχουν κεντρικό ρόλο στην επιστήμη των υπολογιστών : Ανάλυση αλγορίθμων (π.χ. δένδρα αναδρομής) Δομές δεδομένων (π.χ. δένδρα αναζήτησης) ακμή Κατηγορίες (αύξουσα

Διαβάστε περισσότερα

13/5/2015 ΟΥΡΕΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ. Δομές Δεδομένων. Ουρές Προτεραιότητας

13/5/2015 ΟΥΡΕΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ. Δομές Δεδομένων. Ουρές Προτεραιότητας ΟΥΡΕΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ Δομές Δεδομένων Τι θα δούμε Ουρές προτεραιότητας Πράξεις Διωνυμικές Ουρές Διωνυμικά Δέντρα Διωνυμικοί Σωροί Ουρές Fibonacci Αναπαράσταση Πράξεις Ανάλυση Συγκρίσεις Ουρές προτεραιότητας

Διαβάστε περισσότερα

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών 4 ο εξάμηνο ΣΗΜΜΥ 5 η ενότητα: Γράφοι: προβλήματα και αλγόριθμοι Επιμέλεια διαφανειών: Στάθης Ζάχος, Άρης Παγουρτζής, Δημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών

Διαβάστε περισσότερα

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

ΚΕΦΑΛΑΙΟ 3 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ ΚΕΦΑΛΑΙΟ 3 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ Τα δεδομένα (data) είναι η αφαιρετική αναπαράσταση της πραγματικότητας και συνεπώς μία απλοποιημένη όψη της. Η συλλογή των ακατέργαστων δεδομένων και ο συσχετισμός

Διαβάστε περισσότερα

Γράφοι: κατευθυνόμενοι και μη

Γράφοι: κατευθυνόμενοι και μη Γράφοι: κατευθυνόμενοι και μη (V,E ) (V,E ) Γράφος (ή γράφημα): ζεύγος (V,E), V ένα μη κενό σύνολο, Ε διμελής σχέση πάνω στο V Μη κατευθυνόμενος γράφος: σχέση Ε συμμετρική V: κορυφές (vertices), κόμβοι

Διαβάστε περισσότερα

ΕΠΛ 231 Δοµές Δεδοµένων και Αλγόριθµοι 11-1

ΕΠΛ 231 Δοµές Δεδοµένων και Αλγόριθµοι 11-1 Γράφοι Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Γράφοι - ορισµοί και υλοποίηση Διάσχιση Γράφων Τοπολογική Ταξινόµηση ΕΠΛ 23 Δοµές Δεδοµένων και Αλγόριθµοι - Γράφοι Η πιο γενική µορφή δοµής

Διαβάστε περισσότερα

Ισορροπημένα Δένδρα. για κάθε λειτουργία; Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή

Ισορροπημένα Δένδρα. για κάθε λειτουργία; Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή Ισορροπημένα Δένδρα Μπορούμε να επιτύχουμε για κάθε λειτουργία; χρόνο εκτέλεσης Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή μετά από Περιστροφές x αριστερή περιστροφή από το x y α β y

Διαβάστε περισσότερα

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου,

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου, Γράφοι Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Γράφοι - ορισµοί και υλοποίηση Τοπολογική Ταξινόµηση ιάσχιση Γράφων ΕΠΛ 23 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου, 26 - Γράφοι Ηπιο

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 8: Αφαίρεση δεδοµένων

ΚΕΦΑΛΑΙΟ 8: Αφαίρεση δεδοµένων ΚΕΦΑΛΑΙΟ 8: Αφαίρεση δεδοµένων 8.1 Βασικές έννοιες δοµών δεδοµένων 8.2 Σχετικές έννοιες 8.3 Υλοποίηση δοµών δεδοµένων 8.4 Μια σύντοµη µελέτη περίπτωσης 8.5 Προσαρµοσµένοι τύποι δεδοµένων 1 Βασικές δοµές

Διαβάστε περισσότερα

Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες)

Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι

Διαβάστε περισσότερα

Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο

Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο Κατακερματισμός 1 Αποθήκευση εδομένων (σύνοψη) Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο Παραδοσιακά, μία σχέση (πίνακας/στιγμιότυπο) αποθηκεύεται σε ένα αρχείο Αρχείο δεδομένων

Διαβάστε περισσότερα

Κεφάλαιο 3. Γραφήµατα v1.0 ( ) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Κεφάλαιο 3. Γραφήµατα v1.0 ( ) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. Κεφάλαιο 3 Γραφήµατα v1.0 (2010-05-25) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 3.1 Βασικοί Ορισµοί και Εφαρµογές γραφήµατα γράφηµα G: ένας τρόπος κωδικοποίησης των σχέσεων

Διαβάστε περισσότερα

Κεφάλαιο 3. Γραφήματα. v1.3 ( ) Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Κεφάλαιο 3. Γραφήματα. v1.3 ( ) Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. Κεφάλαιο 3 Γραφήματα v1.3 (2014-01-30) Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 3.1 Βασικοί Ορισμοί και Εφαρμογές γραφήματα γράφημα G: ένας τρόπος κωδικοποίησης των σχέσεων

Διαβάστε περισσότερα

Τι είναι αλγόριθμος; Υποπρογράμματα (υποαλγόριθμοι) Βασικές αλγοριθμικές δομές

Τι είναι αλγόριθμος; Υποπρογράμματα (υποαλγόριθμοι) Βασικές αλγοριθμικές δομές Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Ενότητα 7: Αφαίρεση δεδόμενων Πασχαλίδης Δημοσθένης Τμήμα Διαχείρισης Εκκλησιαστικών Κειμηλίων Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Κεφάλαιο 3 : εδοµένα. Πίνακες Στοίβα Ουρά Αναζήτηση Ταξινόµηση. Προγράµµατα

Κεφάλαιο 3 : εδοµένα. Πίνακες Στοίβα Ουρά Αναζήτηση Ταξινόµηση. Προγράµµατα εδοµένα Αλγόριθµοι + οµές εδοµένων = Προγράµµατα Πίνακες Στοίβα Ουρά Αναζήτηση Ταξινόµηση Κεφάλαιο 3 : οµές εδοµένων και Αλγόριθµοι Στοίβα Στη δοµή δεδοµένων στοίβα τα δεδοµένα στοιβάζονται το ένα πάνω

Διαβάστε περισσότερα

ΟΥΡΕΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ

ΟΥΡΕΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ ΟΥΡΕΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ Δομές Δεδομένων Παπαγιαννόπουλος Δημήτριος 30 Μαρτίου 2017 18 Μαΐου 2017 papagianno@ceid.upatras.gr 1 Περιεχόμενα Ουρές προτεραιότητας Πράξεις Διωνυμικές Ουρές Διωνυμικά Δέντρα Διωνυμικοί

Διαβάστε περισσότερα

Initialize each person to be free. while (some man is free and hasn't proposed to every woman) { Choose such a man m w = 1 st woman on m's list to

Initialize each person to be free. while (some man is free and hasn't proposed to every woman) { Choose such a man m w = 1 st woman on m's list to Κεφάλαιο 2 Δοµές Δεδοµένων Ι Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 Δοµές Δεδοµένων Ι Στην ενότητα αυτή θα γνωρίσουµε ορισµένες Δοµές Δεδοµένων και θα τις χρησιµοποιήσουµε

Διαβάστε περισσότερα

Αλγόριθµοι + οµές εδοµένων = Προγράµµατα

Αλγόριθµοι + οµές εδοµένων = Προγράµµατα 2 ΟΜΕΣ Ε ΟΜΕΝΩΝ 2.1 ΕΙΣΑΓΩΓΗ Εκτός από τους αλγορίθµους, σηµαντική έννοια για την Πληροφορική είναι και η έννοια των δεδοµένων. Τα δεδοµένα αποθηκεύονται στον υπολογιστή µε τη βοήθεια των λεγόµενων δοµών

Διαβάστε περισσότερα

Οντοκεντρικός Προγραμματισμός

Οντοκεντρικός Προγραμματισμός Οντοκεντρικός Προγραμματισμός Ενότητα 8: C++ ΒΙΒΛΙΟΗΚΗ STL, ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Δομές Δεδομένων ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής Δομές

Διαβάστε περισσότερα

8.6 Κλάσεις και αντικείμενα 8.7 Δείκτες σε γλώσσα μηχανής

8.6 Κλάσεις και αντικείμενα 8.7 Δείκτες σε γλώσσα μηχανής ΚΕΦΑΛΑΙΟ 8: Αφαιρετικές έννοιες δεδομένων 8.1 Βασικές έννοιες δομών δεδομένων 8.2 Σχετικές έννοιες 8.3 Υλοποίηση δομών δεδομένων 8.4 Μια σύντομη μελέτη περίπτωσης 8.4 Προσαρμοσμένοι τύποι δεδομένων 8.6

Διαβάστε περισσότερα

Διάλεξη 11: Δέντρα Ι Εισαγωγή σε Δενδρικές Δομές Δεδομένων

Διάλεξη 11: Δέντρα Ι Εισαγωγή σε Δενδρικές Δομές Δεδομένων Διάλεξη 11: Δέντρα Ι Εισαγωγή σε Δενδρικές Δομές Δεδομένων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή σε δενδρικές δομές δεδομένων, Ορισμοί και πράξεις Αναπαράσταση δενδρικών δομών

Διαβάστε περισσότερα

Κεφάλαιο 3. Γραφήματα. ver. 21/12/2014. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Κεφάλαιο 3. Γραφήματα. ver. 21/12/2014. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. Κεφάλαιο 3 Γραφήματα ver. 21/12/2014 Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 3.1 Βασικοί Ορισμοί και Εφαρμογές γραφήματα γράφημα G: ένας τρόπος κωδικοποίησης των σχέσεων ανά

Διαβάστε περισσότερα

Περιεχόμενα. Περιεχόμενα

Περιεχόμενα. Περιεχόμενα Περιεχόμενα xv Περιεχόμενα 1 Αρχές της Java... 1 1.1 Προκαταρκτικά: Κλάσεις, Τύποι και Αντικείμενα... 2 1.1.1 Βασικοί Τύποι... 5 1.1.2 Αντικείμενα... 7 1.1.3 Τύποι Enum... 14 1.2 Μέθοδοι... 15 1.3 Εκφράσεις...

Διαβάστε περισσότερα

Ενότητα 5: Αλγόριθμοι γράφων και δικτύων

Ενότητα 5: Αλγόριθμοι γράφων και δικτύων Εισαγωγή στην Επιστήμη των Υπολογιστών ο εξάμηνο ΣΗΜΜΥ Ενότητα : Αλγόριθμοι γράφων και δικτύων Επιμέλεια διαφανειών: Στάθης Ζάχος, Άρης Παγουρτζής, Δημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών

Διαβάστε περισσότερα

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Διακριτά Μαθηματικά. Ενότητα 3: Δένδρα

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Διακριτά Μαθηματικά. Ενότητα 3: Δένδρα Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Διακριτά Μαθηματικά Ενότητα 3: Δένδρα Αν. Καθηγητής Κ. Στεργίου e-mail: kstergiou@uowm.gr Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το

Διαβάστε περισσότερα

Ουρές προτεραιότητας

Ουρές προτεραιότητας Ουρές προτεραιότητας Πελάτες... στο ταµείο µιας τράπεζας Κάθε πελάτης µε ένα νούµερο/αριθµός προτεραιότητας! Όσοοαριθµός είναι µεγάλος, τόσο οι πελάτες είναι πιο ενδιαφέροντες(!) ένα µόνο ταµείο ανοικτό

Διαβάστε περισσότερα

Ενότητα 10 Γράφοι (ή Γραφήµατα)

Ενότητα 10 Γράφοι (ή Γραφήµατα) Ενότητα 10 Γράφοι (ή γραφήµατα) ΗΥ240 - Παναγιώτα Φατούρου 1 Γράφοι (ή Γραφήµατα) Ένας γράφος αποτελείται από ένα σύνολο από σηµεία (που λέγονται κόµβοι) και ένα σύνολο από γραµµές (που λέγονται ακµές)

Διαβάστε περισσότερα

Cuckoo Hashing. Αλγόριθμοι και Πολυπλοκότητα. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο

Cuckoo Hashing. Αλγόριθμοι και Πολυπλοκότητα. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Cuckoo Hashing Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο β Πολυτεχνείο Πρόβλημα (ADT) Λεξικού υναμικά μεταβαλλόμενη συλλογή αντικειμένων που αναγνωρίζονται με «κλειδί» (π.χ.

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ. Δομές Δεδομένων. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Προγραμματισμός Η/Υ. Δομές Δεδομένων. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος Προγραμματισμός Η/Υ Δομές Δεδομένων ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος Δομές Δεδομένων Τα δεδομένα ενός προβλήματος αποθηκεύονται στον υπολογιστή,

Διαβάστε περισσότερα

Διάλεξη 16: Σωροί. Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Ουρές Προτεραιότητας - Ο ΑΤΔ Σωρός, Υλοποίηση και πράξεις

Διάλεξη 16: Σωροί. Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Ουρές Προτεραιότητας - Ο ΑΤΔ Σωρός, Υλοποίηση και πράξεις ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 1 Διάλεξη 16: Σωροί Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Ουρές Προτεραιότητας - Ο ΑΤΔ Σωρός, Υλοποίηση και πράξεις Ουρά Προτεραιότητας Η δομή

Διαβάστε περισσότερα

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι:

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι: ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Μια δομή δεδομένων στην πληροφορική, συχνά αναπαριστά οντότητες του φυσικού κόσμου στον υπολογιστή. Για την αναπαράσταση αυτή, δημιουργούμε πρώτα ένα αφηρημένο μοντέλο στο οποίο προσδιορίζονται

Διαβάστε περισσότερα

Αλγόριθµοι και Πολυπλοκότητα

Αλγόριθµοι και Πολυπλοκότητα Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα Φεβρουαρίου 0 / ένδρα Ενα δένδρο είναι

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 10β: Αλγόριθμοι Γραφημάτων-Γραφήματα- Αναπαράσταση Γραφημάτων- Διερεύνηση Πρώτα σε Πλάτος (BFS) Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το

Διαβάστε περισσότερα

Ενότητες 3 & 4: Δένδρα, Σύνολα & Λεξικά Ασκήσεις και Λύσεις

Ενότητες 3 & 4: Δένδρα, Σύνολα & Λεξικά Ασκήσεις και Λύσεις Ενότητες 3 & 4: Δένδρα, Σύνολα & Λεξικά Ασκήσεις και Λύσεις Άσκηση 1 Γράψτε μία αναδρομική συνάρτηση που θα παίρνει ως παράμετρο ένα δείκτη στη ρίζα ενός δυαδικού δένδρου και θα επιστρέφει το βαθμό του

Διαβάστε περισσότερα

Αλγόριθμοι Γραφημάτων

Αλγόριθμοι Γραφημάτων Αλγόριθμοι Γραφημάτων. Γραφήματα. Αναπαράσταση Γραφημάτων 3. Διερεύνηση σε Πρώτα σε Πλάτος (BFS) Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη Γράφημα Ορισμός: Ένα γράφημα G είναι το διατεταγμένο ζεύγος

Διαβάστε περισσότερα

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 11. Γράφοι 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 23/12/2016 Εισαγωγή Οι γράφοι

Διαβάστε περισσότερα

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων ΟΝΟΜΑΤΕΠΩΝΥΜΟ: ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ AM: Δοµές Δεδοµένων Εξεταστική Ιανουαρίου 2014 Διδάσκων : Ευάγγελος Μαρκάκης 20.01.2014 ΥΠΟΓΡΑΦΗ ΕΠΟΠΤΗ: Διάρκεια εξέτασης : 2 ώρες και

Διαβάστε περισσότερα

ΠΛΗ111. Ανοιξη 2005. Μάθηµα 10 ο. Γράφοι. Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης

ΠΛΗ111. Ανοιξη 2005. Μάθηµα 10 ο. Γράφοι. Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης ΠΛΗ111 οµηµένος Προγραµµατισµός Ανοιξη 2005 Μάθηµα 10 ο Γράφοι Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης Γράφοι Ορισµός Αφηρηµένος τύπος δεδοµένων Υλοποίηση Αναζήτηση έντρο

Διαβάστε περισσότερα

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Γραφήματα. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Γραφήματα. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Δομές Δεδομένων Γραφήματα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Γραφήματα Κατευθυνόμενο Γράφημα Ένα κατευθυνόμενο γράφημα G είναι ένα ζευγάρι (V, E) όπου V είναι ένα

Διαβάστε περισσότερα

Οι δομές δεδομένων στοίβα και ουρά

Οι δομές δεδομένων στοίβα και ουρά Καθηγητής Πληροφορικής Απαγορεύεται η αναπαραγωγή των σημειώσεων χωρίς αναφορά στην πηγή Βίντεο: https://youtu.be/j8petzztqty Οι δομές δεδομένων στοίβα και ουρά Εισαγωγή Στα πλαίσια του μαθήματος της Ανάπτυξης

Διαβάστε περισσότερα

Σχεδίαση Αλγορίθμων - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1

Σχεδίαση Αλγορίθμων - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1 Σχεδίαση Αλγορίθμων Μείωσε και Βασίλευε http://delab.csd.auth.gr/~gounaris/courses/ad auth gounaris/courses/ad Σχεδίαση Αλγορίθμων - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1 Μείωσε και Βασίλευε 1. Μειώνουμε

Διαβάστε περισσότερα

Αναζήτηση σε Γράφους. Μανόλης Κουμπαράκης. ΥΣ02 Τεχνητή Νοημοσύνη 1

Αναζήτηση σε Γράφους. Μανόλης Κουμπαράκης. ΥΣ02 Τεχνητή Νοημοσύνη 1 Αναζήτηση σε Γράφους Μανόλης Κουμπαράκης ΥΣ02 Τεχνητή Νοημοσύνη 1 Πρόλογος Μέχρι τώρα έχουμε δει αλγόριθμους αναζήτησης για την περίπτωση που ο χώρος καταστάσεων είναι δένδρο (υπάρχει μία μόνο διαδρομή

Διαβάστε περισσότερα

Θέματα Υπολογισμού στον Πολιτισμό - Δένδρα. Δένδρα

Θέματα Υπολογισμού στον Πολιτισμό - Δένδρα. Δένδρα Δένδρα Δένδρα Ειδική κατηγορία γραφημάτων: συνεκτικά γραφήματα που δεν περιέχουν απλά κυκλώματα [1857] Arthur Cayley: για απαρίθμηση ορισμένων ειδών χημικών ενώσεων Χρησιμοποιούνται σε πληθώρα προβλημάτων,

Διαβάστε περισσότερα

Συλλογές, Στοίβες και Ουρές

Συλλογές, Στοίβες και Ουρές Συλλογές, Στοίβες και Ουρές Σε πολλές εφαρμογές μας αρκεί η αναπαράσταση ενός δυναμικού συνόλου με μια δομή δεδομένων η οποία δεν υποστηρίζει την αναζήτηση οποιουδήποτε στοιχείου. Συλλογή (bag) : Επιστρέφει

Διαβάστε περισσότερα

Αλγόριθµοι και Πολυπλοκότητα

Αλγόριθµοι και Πολυπλοκότητα Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 9 Απριλίου 2009 1 / 0 Παραδείγµατα γράφων

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 3 ο

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 3 ο ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Να γίνει περιγραφή της δομής δεδομένων Στοίβα. Στη δομή δεδομένων στοίβα τα δεδομένα στοιβάζονται το ένα πάνω στο άλλο. Σχηματικά οι λεπτομέρειες μιας δομής δεδομένων στοίβας μπορούν

Διαβάστε περισσότερα

ΗΥ240: Δομές Δεδομένων Εαρινό Εξάμηνο Ακαδημαϊκό Έτος 2017 Διδάσκουσα: Παναγιώτα Φατούρου Προγραμματιστική Εργασία - 2o Μέρος

ΗΥ240: Δομές Δεδομένων Εαρινό Εξάμηνο Ακαδημαϊκό Έτος 2017 Διδάσκουσα: Παναγιώτα Φατούρου Προγραμματιστική Εργασία - 2o Μέρος ΗΥ240: Δομές Δεδομένων Εαρινό Εξάμηνο Ακαδημαϊκό Έτος 2017 Διδάσκουσα: Παναγιώτα Φατούρου Προγραμματιστική Εργασία - 2o Μέρος Ημερομηνία Παράδοσης: Δευτέρα, 15 Μαΐου 2017, ώρα 23:59. Τρόπος Παράδοσης:

Διαβάστε περισσότερα

Επιµέλεια Θοδωρής Πιερράτος

Επιµέλεια Θοδωρής Πιερράτος εδοµένα οµές δεδοµένων και αλγόριθµοι Τα δεδοµένα είναι ακατέργαστα γεγονότα. Η συλλογή των ακατέργαστων δεδοµένων και ο συσχετισµός τους δίνει ως αποτέλεσµα την πληροφορία. Η µέτρηση, η κωδικοποίηση,

Διαβάστε περισσότερα

ΕΝΟΤΗΤΑ 4 ΕΝ ΡΑ. ΗΥ240 - Παναγιώτα Φατούρου 1

ΕΝΟΤΗΤΑ 4 ΕΝ ΡΑ. ΗΥ240 - Παναγιώτα Φατούρου 1 ΕΝΟΤΗΤΑ 4 ΕΝ ΡΑ ΗΥ240 - Παναγιώτα Φατούρου 1 ένδρα Κόµβοι (nodes) Ακµές (edges) Ουρά και κεφαλή ακµής (tail, head) Γονέας Παιδί Αδελφικός κόµβος (parent, child, sibling) Μονοπάτι (path) Πρόγονος απόγονος

Διαβάστε περισσότερα

Άσκηση 3 (ανακοινώθηκε στις 24 Απριλίου 2017, προθεσμία παράδοσης: 2 Ιουνίου 2017, 12 τα μεσάνυχτα).

Άσκηση 3 (ανακοινώθηκε στις 24 Απριλίου 2017, προθεσμία παράδοσης: 2 Ιουνίου 2017, 12 τα μεσάνυχτα). Κ08 Δομές Δεδομένων και Τεχνικές Προγραμματισμού Διδάσκων: Μανόλης Κουμπαράκης Εαρινό Εξάμηνο 2016-2017. Άσκηση 3 (ανακοινώθηκε στις 24 Απριλίου 2017, προθεσμία παράδοσης: 2 Ιουνίου 2017, 12 τα μεσάνυχτα).

Διαβάστε περισσότερα

Αναζήτηση στους γράφους. - Αναζήτηση η κατά βάθος Συνεκτικές Συνιστώσες - Αλγόριθμος εύρεσης συνεκτικών συνιστωσών

Αναζήτηση στους γράφους. - Αναζήτηση η κατά βάθος Συνεκτικές Συνιστώσες - Αλγόριθμος εύρεσης συνεκτικών συνιστωσών Αναζήτηση στους γράφους Βασικός αλγόριθμος λό - Αναζήτηση κατά πλάτος - Αναζήτηση η κατά βάθος Συνεκτικές Συνιστώσες - Αλγόριθμος εύρεσης συνεκτικών συνιστωσών Διάσχιση (αναζήτηση ) στους γράφους Φεύγοντας

Διαβάστε περισσότερα

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου, 2006 9-1

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου, 2006 9-1 Σωροί Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Ουρές Προτεραιότητας Σωροί υλοποίηση και πράξεις Ο αλγόριθµος ταξινόµησης HeapSort Παραλλαγές Σωρών ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι

Διαβάστε περισσότερα

Βασικές Έννοιες Δοµών Δεδοµένων

Βασικές Έννοιες Δοµών Δεδοµένων Δοµές Δεδοµένων Δοµές Δεδοµένων Στην ενότητα αυτή θα γνωρίσουµε ορισµένες Δοµές Δεδοµένων και θα τις χρησιµοποιήσουµε για την αποδοτική επίλυση του προβλήµατος του ευσταθούς ταιριάσµατος Βασικές Έννοιες

Διαβάστε περισσότερα

Διάλεξη 05: Αφηρημένοι Τύποι Δεδομένων

Διάλεξη 05: Αφηρημένοι Τύποι Δεδομένων Διάλεξη 05: Αφηρημένοι Τύποι Δεδομένων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Αφηρημένοι Τύποι Δεδομένων (ΑΤΔ) Οι ΑΤΔ Στοίβα και Ουρά Υλοποίηση των ΑΤΔ Στοίβα και Ουρά ΕΠΛ231 Δομές Δεδομένων

Διαβάστε περισσότερα

h/2. Άρα, n 2 h/2-1 h 2log(n+1). Πως υλοποιούµε τη LookUp()? Πολυπλοκότητα?

h/2. Άρα, n 2 h/2-1 h 2log(n+1). Πως υλοποιούµε τη LookUp()? Πολυπλοκότητα? Κόκκινα-Μαύρα ένδρα (Red-Black Trees) Ένα κόκκινο-µαύρο δένδρο είναι ένα δυαδικό δένδρο αναζήτησης στο οποίο οι κόµβοι µπορούν να χαρακτηρίζονται από ένα εκ των δύο χρωµάτων: µαύρο-κόκκινο. Το χρώµα της

Διαβάστε περισσότερα

ένδρα u o Κόµβοι (nodes) o Ακµές (edges) o Ουρά και κεφαλή ακµής (tail, head) o Γονέας Παιδί Αδελφικός κόµβος (parent, child, sibling) o Μονοπάτι (pat

ένδρα u o Κόµβοι (nodes) o Ακµές (edges) o Ουρά και κεφαλή ακµής (tail, head) o Γονέας Παιδί Αδελφικός κόµβος (parent, child, sibling) o Μονοπάτι (pat ΕΝΟΤΗΤΑ 4 ΕΝ ΡΑ ένδρα u o Κόµβοι (nodes) o Ακµές (edges) o Ουρά και κεφαλή ακµής (tail, head) o Γονέας Παιδί Αδελφικός κόµβος (parent, child, sibling) o Μονοπάτι (path) o Πρόγονος απόγονος (ancestor, descendant)

Διαβάστε περισσότερα

Ισορροπημένα Δένδρα. για κάθε λειτουργία; Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή

Ισορροπημένα Δένδρα. για κάθε λειτουργία; Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή Ισορροπημένα Δένδρα Μπορούμε να επιτύχουμε για κάθε λειτουργία; χρόνο εκτέλεσης Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή μετά από Περιστροφές x αριστερή περιστροφή από το x y α β y

Διαβάστε περισσότερα

έντρα ομές εδομένων 3ο εξάμηνο ιδάσκων: Χρήστος ουλκερίδης ιαφάνειες προσαρμοσμένες από το υλικό της Μαρίας Χαλκίδη

έντρα ομές εδομένων 3ο εξάμηνο ιδάσκων: Χρήστος ουλκερίδης ιαφάνειες προσαρμοσμένες από το υλικό της Μαρίας Χαλκίδη έντρα 2-3-4 ομές εδομένων 3ο εξάμηνο ιδάσκων: Χρήστος ουλκερίδης ιαφάνειες προσαρμοσμένες από το υλικό της Μαρίας Χαλκίδη Σημερινό Μάθημα 2-3-4 έντρα Ισοζυγισμένα δέντρα αναζήτησης έντρα αναζήτησης πολλαπλών

Διαβάστε περισσότερα

Κεφάλαιο 3. Γραφήµατα v1.1 (2012-01-12) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Κεφάλαιο 3. Γραφήµατα v1.1 (2012-01-12) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. Κεφάλαιο 3 Γραφήµατα v1.1 (2012-01-12) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 3.1 Βασικοί Ορισµοί και Εφαρµογές γραφήµατα γράφηµα G: ένας τρόπος κωδικοποίησης των σχέσεων

Διαβάστε περισσότερα

Βασικές Δομές Δεδομένων

Βασικές Δομές Δεδομένων Βασικές Δομές Δεδομένων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Αφηρημένοι Τύποι Δεδομένων Οι ΑΤΔ Στοίβα και Ουρά Υλοποίηση των ΑΤΔ Στοίβα και Ουρά με Διαδοχική και Δυναμική Χορήγηση

Διαβάστε περισσότερα

Δομές Δεδομένων και Αλγόριθμοι

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 Παρουσίαση 16 Δένδρα (Trees) 1 / 42 Δένδρα (Trees) Ένα δένδρο είναι ένα συνδεδεμένο γράφημα χωρίς κύκλους Για κάθε

Διαβάστε περισσότερα

Εισαγωγή ενός νέου στοιχείου. Επιλογή i-οστoύ στοιχείου : Εύρεση στοιχείου με το i-οστό μικρότερο κλειδί

Εισαγωγή ενός νέου στοιχείου. Επιλογή i-οστoύ στοιχείου : Εύρεση στοιχείου με το i-οστό μικρότερο κλειδί Δομές Αναζήτησης Χειριζόμαστε ένα σύνολο στοιχείων κλειδί από ολικά διατεταγμένο σύνολο όπου το κάθε στοιχείο έχει ένα Θέλουμε να υποστηρίξουμε δύο βασικές λειτουργίες: Εισαγωγή ενός νέου στοιχείου με

Διαβάστε περισσότερα

Επίλυση Προβλημάτων 1

Επίλυση Προβλημάτων 1 Επίλυση Προβλημάτων 1 Επίλυση Προβλημάτων Περιγραφή Προβλημάτων Αλγόριθμοι αναζήτησης Αλγόριθμοι τυφλής αναζήτησης Αναζήτηση πρώτα σε βάθος Αναζήτηση πρώτα σε πλάτος (ΒFS) Αλγόριθμοι ευρετικής αναζήτησης

Διαβάστε περισσότερα

Διάλεξη 26: Σωροί. Διδάσκων: Παναγιώτης Ανδρέου

Διάλεξη 26: Σωροί. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 26: Σωροί Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Ουρές Προτεραιότητας -Ο ΑΤΔ Σωρός, Υλοποίηση και πράξεις Διδάσκων: Παναγιώτης Ανδρέου ΕΠΛ035 Δομές Δεδομένων και Αλγόριθμοι

Διαβάστε περισσότερα

ENOTHTA 3 ΟΜΕΣ Ε ΟΜΕΝΩΝ

ENOTHTA 3 ΟΜΕΣ Ε ΟΜΕΝΩΝ ENOTHTA ΟΜΕΣ Ε ΟΜΕΝΩΝ Ανάπτυξη Εφαρµογών, Αλέξης Μπράιλας,, 000 . ΠΙΝΑΚΕΣ Ανάπτυξη Εφαρµογών, Αλέξης Μπράιλας,, 000 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ εδοµένα Αλγόριθµοι + οµές εδοµένων = Προγράµµατα Πίνακες Στοίβα και Ουρά

Διαβάστε περισσότερα

ΔυαδικάΔΕΝΔΡΑΑναζήτησης

ΔυαδικάΔΕΝΔΡΑΑναζήτησης ΔυαδικάΔΕΝΔΡΑΑναζήτησης Ρίζα (κόμβος που δεν έχει γονέα) πρόγονοι απόγονοι γονέας παιδιά έντρο είναι µία συλλογή από στοιχεία, που ονοµάζονται κόµβοι και συνδέονται µεταξύ τους µε τη βοήθεια ακµών αδέλφια

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 1 Για τις ερωτήσεις 1-4 θεωρήσατε τον ακόλουθο γράφο. Ποιές από τις παρακάτω προτάσεις αληθεύουν και ποιές όχι;

ΑΣΚΗΣΗ 1 Για τις ερωτήσεις 1-4 θεωρήσατε τον ακόλουθο γράφο. Ποιές από τις παρακάτω προτάσεις αληθεύουν και ποιές όχι; ΘΕΜΑΤΑ ΔΕΝΔΡΩΝ ΓΙΑ ΤΙΣ ΕΞΕΤΑΣΕΙΣ ΠΛΗ0 ΑΣΚΗΣΗ Για τις ερωτήσεις - θεωρήσατε τον ακόλουθο γράφο. Ποιές από τις παρακάτω προτάσεις αληθεύουν και ποιές όχι; Β Ε Α 6 Δ 5 9 8 0 Γ 7 Ζ Η. Σ/Λ Δυο από τα συνδετικά

Διαβάστε περισσότερα

Βασικές οµές εδοµένων

Βασικές οµές εδοµένων Βασικές οµές εδοµένων Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Αφηρηµένοι Τύποι εδοµένων Οι ΑΤ Στοίβα και Ουρά Υλοποίηση των ΑΤ Στοίβα και Ουρά µε ιαδοχική και υναµική Χορήγηση Μνήµης

Διαβάστε περισσότερα

Standard Template Library (STL) C++ library

Standard Template Library (STL) C++ library Τ Μ Η Μ Α Μ Η Χ Α Ν Ι Κ Ω Ν Η / Υ Κ Α Ι Π Λ Η Ρ Ο Φ Ο Ρ Ι Κ Η Σ Standard Template Library (STL) C++ library Δομές Δεδομένων Μάριος Κενδέα kendea@ceid.upatras.gr Εισαγωγή Η Standard Βιβλιοθήκη προτύπων

Διαβάστε περισσότερα