Εισαγωγή στις Ανοικτές Δομές Δεδομένων
Το σύγγραμμα καλύπτει τη σχεδίαση, την υλοποίηση και την ανάλυση κάποιων από τις πιο γνωστές δομές δεδομένων που συναντώνται στη διεθνή βιβλιογραφία της πληροφορικής, όπως, για παράδειγμα, της στοίβας, της ουράς, της ουράς διπλού άκρου, της λίστας (υλοποιημένης σε πίνακα ή με δείκτες), της λίστας πα...
Κύριοι συγγραφείς: | , , , , , , |
---|---|
Μορφή: | 1 |
Γλώσσα: | Greek |
Έκδοση: |
2024
|
Θέματα: | |
Διαθέσιμο Online: | http://repository.kallipos.gr/handle/11419/12117 http://dx.doi.org/10.57713/kallipos-414 |
id |
kallipos-11419-12117 |
---|---|
record_format |
dspace |
institution |
Kallipos |
collection |
DSpace |
language |
Greek |
topic |
Δομές Δεδομένων Αλγόριθμοι Πολυπλοκότητα Χρόνου και Χώρου Αναζήτηση Ταξινόμηση Πίνακες Λίστες Ουρές Στοίβες Σωροί Γράφοι Δένδρα Κατακερματισμός Προγραμματισμός Ηλεκτρονικών Υπολογιστών Python C++ Java Data Structures Algorithms Time and Space Complexity Searching Sorting Arrays Lists Queues Stacks Heaps Graphs Trees Hashing Computer Programming Python C++ Java |
spellingShingle |
Δομές Δεδομένων Αλγόριθμοι Πολυπλοκότητα Χρόνου και Χώρου Αναζήτηση Ταξινόμηση Πίνακες Λίστες Ουρές Στοίβες Σωροί Γράφοι Δένδρα Κατακερματισμός Προγραμματισμός Ηλεκτρονικών Υπολογιστών Python C++ Java Data Structures Algorithms Time and Space Complexity Searching Sorting Arrays Lists Queues Stacks Heaps Graphs Trees Hashing Computer Programming Python C++ Java Morin, Pat Τζουραμάνης, Θεόδωρος (Μετ.) Μάρκου, Ευριπίδης (Μετ.) Μανωλόπουλος, Ιωάννης (Μετ.) Morin, Pat Tzouramanis, Theodoros (Tr.) Markou, Euripides (Tr.) Manolopoulos, Yannis (Tr.) Εισαγωγή στις Ανοικτές Δομές Δεδομένων |
description |
Το σύγγραμμα καλύπτει τη σχεδίαση, την υλοποίηση και την ανάλυση κάποιων από τις πιο γνωστές δομές δεδομένων που συναντώνται στη διεθνή βιβλιογραφία της πληροφορικής, όπως, για παράδειγμα, της στοίβας, της ουράς, της ουράς διπλού άκρου, της λίστας (υλοποιημένης σε πίνακα ή με δείκτες), της λίστας παράλειψης, διάφορων τεχνικών πινάκων κατακερματισμού, του δυαδικού δένδρου (συμπεριλαμβανομένου του δυαδικού δένδρου αναζήτησης, του δενδροσωρού, του δένδρου εξιλαστήριων θυμάτων και του ερυθρόμαυρου δένδρου), του σωρού (συμπεριλαμβανομένου του δυαδικού και του τυχαιοποιημένου συγχωνεύσιμου σωρού), του γράφου (συμπεριλαμβανομένης της αναπαράστασής του με πίνακα και με λίστα γειτνίασης), ορισμένων ειδικευμένων δομών δεδομένων για ακέραιους αριθμούς (συμπεριλαμβανομένων διάφορων μορφών δυαδικών ψηφιακών δένδρων), του Β-δένδρου κτλ. Οι αλγόριθμοι υλοποίησης των δομών δεδομένων δίνονται τόσο σε ψευδοκώδικα (βασισμένο στη γλώσσα προγραμματισμού Python), όσο και στις γλώσσες προγραμματισμού C++ και Java. Η ύλη του συγγράμματος κατανέμεται σε 14 κεφάλαια και μπορεί να καλύψει επαρκώς ένα ακαδημαϊκό πρόγραμμα διδασκαλίας 13 εβδομάδων του προπτυχιακού μαθήματος «Δομές Δεδομένων». Επιπρόσθετα, ορισμένα κεφάλαια του συγγράμματος μπορούν να αξιοποιηθούν και σε πιο προχωρημένα στάδια του ακαδημαϊκού προγράμματος σπουδών, μεταξύ άλλων και σε αντίστοιχα μαθήματα μεταπτυχιακού επιπέδου. Το σύγγραμμα εφοδιάζει τον αναγνώστη με το απαραίτητο υπόβαθρο για την αποτελεσματική χρήση των δομών δεδομένων στην υποστήριξη ενός μεγάλου φάσματος εφαρμογών στην πληροφορική. Πιο συγκεκριμένα, η ύλη του βιβλίου παρέχει στον αναγνώστη τη δυνατότητα να αναλύει την επίδοση δομών δεδομένων, να συγκρίνει την αποδοτικότητα και την καταλληλότητά τους για την επίλυση διάφορων προβλημάτων, να σχεδιάζει σύνθετες και προσαρμοσμένες ανά εφαρμογή δομές δεδομένων και να τις υλοποιεί με αποδοτικούς αλγόριθμους στη γλώσσα προγραμματισμού που επιθυμεί. |
format |
1 |
author |
Morin, Pat Τζουραμάνης, Θεόδωρος (Μετ.) Μάρκου, Ευριπίδης (Μετ.) Μανωλόπουλος, Ιωάννης (Μετ.) Morin, Pat Tzouramanis, Theodoros (Tr.) Markou, Euripides (Tr.) Manolopoulos, Yannis (Tr.) |
author_facet |
Morin, Pat Τζουραμάνης, Θεόδωρος (Μετ.) Μάρκου, Ευριπίδης (Μετ.) Μανωλόπουλος, Ιωάννης (Μετ.) Morin, Pat Tzouramanis, Theodoros (Tr.) Markou, Euripides (Tr.) Manolopoulos, Yannis (Tr.) |
author_sort |
Morin, Pat |
title |
Εισαγωγή στις Ανοικτές Δομές Δεδομένων |
title_short |
Εισαγωγή στις Ανοικτές Δομές Δεδομένων |
title_full |
Εισαγωγή στις Ανοικτές Δομές Δεδομένων |
title_fullStr |
Εισαγωγή στις Ανοικτές Δομές Δεδομένων |
title_full_unstemmed |
Εισαγωγή στις Ανοικτές Δομές Δεδομένων |
title_sort |
εισαγωγή στις ανοικτές δομές δεδομένων |
publishDate |
2024 |
url |
http://repository.kallipos.gr/handle/11419/12117 http://dx.doi.org/10.57713/kallipos-414 |
work_keys_str_mv |
AT morinpat eisagōgēstisanoiktesdomesdedomenōn AT tzouramanēstheodōrosmet eisagōgēstisanoiktesdomesdedomenōn AT markoueuripidēsmet eisagōgēstisanoiktesdomesdedomenōn AT manōlopoulosiōannēsmet eisagōgēstisanoiktesdomesdedomenōn AT morinpat eisagōgēstisanoiktesdomesdedomenōn AT tzouramanistheodorostr eisagōgēstisanoiktesdomesdedomenōn AT markoueuripidestr eisagōgēstisanoiktesdomesdedomenōn AT manolopoulosyannistr eisagōgēstisanoiktesdomesdedomenōn AT morinpat opendatastructuresanintroduction AT tzouramanēstheodōrosmet opendatastructuresanintroduction AT markoueuripidēsmet opendatastructuresanintroduction AT manōlopoulosiōannēsmet opendatastructuresanintroduction AT morinpat opendatastructuresanintroduction AT tzouramanistheodorostr opendatastructuresanintroduction AT markoueuripidestr opendatastructuresanintroduction AT manolopoulosyannistr opendatastructuresanintroduction |
_version_ |
1799946617863798784 |
spelling |
kallipos-11419-121172024-04-16T09:48:00Z Εισαγωγή στις Ανοικτές Δομές Δεδομένων Open Data Structures: An Introduction Morin, Pat Τζουραμάνης, Θεόδωρος (Μετ.) Μάρκου, Ευριπίδης (Μετ.) Μανωλόπουλος, Ιωάννης (Μετ.) Morin, Pat Tzouramanis, Theodoros (Tr.) Markou, Euripides (Tr.) Manolopoulos, Yannis (Tr.) Δομές Δεδομένων Αλγόριθμοι Πολυπλοκότητα Χρόνου και Χώρου Αναζήτηση Ταξινόμηση Πίνακες Λίστες Ουρές Στοίβες Σωροί Γράφοι Δένδρα Κατακερματισμός Προγραμματισμός Ηλεκτρονικών Υπολογιστών Python C++ Java Data Structures Algorithms Time and Space Complexity Searching Sorting Arrays Lists Queues Stacks Heaps Graphs Trees Hashing Computer Programming Python C++ Java Το σύγγραμμα καλύπτει τη σχεδίαση, την υλοποίηση και την ανάλυση κάποιων από τις πιο γνωστές δομές δεδομένων που συναντώνται στη διεθνή βιβλιογραφία της πληροφορικής, όπως, για παράδειγμα, της στοίβας, της ουράς, της ουράς διπλού άκρου, της λίστας (υλοποιημένης σε πίνακα ή με δείκτες), της λίστας παράλειψης, διάφορων τεχνικών πινάκων κατακερματισμού, του δυαδικού δένδρου (συμπεριλαμβανομένου του δυαδικού δένδρου αναζήτησης, του δενδροσωρού, του δένδρου εξιλαστήριων θυμάτων και του ερυθρόμαυρου δένδρου), του σωρού (συμπεριλαμβανομένου του δυαδικού και του τυχαιοποιημένου συγχωνεύσιμου σωρού), του γράφου (συμπεριλαμβανομένης της αναπαράστασής του με πίνακα και με λίστα γειτνίασης), ορισμένων ειδικευμένων δομών δεδομένων για ακέραιους αριθμούς (συμπεριλαμβανομένων διάφορων μορφών δυαδικών ψηφιακών δένδρων), του Β-δένδρου κτλ. Οι αλγόριθμοι υλοποίησης των δομών δεδομένων δίνονται τόσο σε ψευδοκώδικα (βασισμένο στη γλώσσα προγραμματισμού Python), όσο και στις γλώσσες προγραμματισμού C++ και Java. Η ύλη του συγγράμματος κατανέμεται σε 14 κεφάλαια και μπορεί να καλύψει επαρκώς ένα ακαδημαϊκό πρόγραμμα διδασκαλίας 13 εβδομάδων του προπτυχιακού μαθήματος «Δομές Δεδομένων». Επιπρόσθετα, ορισμένα κεφάλαια του συγγράμματος μπορούν να αξιοποιηθούν και σε πιο προχωρημένα στάδια του ακαδημαϊκού προγράμματος σπουδών, μεταξύ άλλων και σε αντίστοιχα μαθήματα μεταπτυχιακού επιπέδου. Το σύγγραμμα εφοδιάζει τον αναγνώστη με το απαραίτητο υπόβαθρο για την αποτελεσματική χρήση των δομών δεδομένων στην υποστήριξη ενός μεγάλου φάσματος εφαρμογών στην πληροφορική. Πιο συγκεκριμένα, η ύλη του βιβλίου παρέχει στον αναγνώστη τη δυνατότητα να αναλύει την επίδοση δομών δεδομένων, να συγκρίνει την αποδοτικότητα και την καταλληλότητά τους για την επίλυση διάφορων προβλημάτων, να σχεδιάζει σύνθετες και προσαρμοσμένες ανά εφαρμογή δομές δεδομένων και να τις υλοποιεί με αποδοτικούς αλγόριθμους στη γλώσσα προγραμματισμού που επιθυμεί. The book covers the design, implementation and analysis of some of the most well-known data structures in the literature of informatics and computer science, such as, for example, the stack, the queue, the deque, the list (implemented using an array or pointers), the skip list, several hash table methods, the binary tree (including the binary search tree, the treap, the scapegoat tree and the red-black tree), the heap (including the binary heap and the randomized meldable heap), the graph (including its representation by a matrix or as a collection of lists), some specialised data structures for integers (including various forms of binary digital trees), the B-tree, etc. The algorithms for implementing the data structures are given in pseudocode (on the basis of the Python programming language) and in the C++ and Java programming languages. The book is organised into 14 chapters and can adequately cover a 13-week academic semester for the "Data Structures" undergraduate course. In addition, some chapters of the book can be taught at a more advanced stage of the academic curriculum, including in the context of relevant postgraduate courses. The book provides the student with the necessary background for the effective use of the data structures in a wide range of application domains in informatics and computer science. The material of the book aims to enable students to analyse the performance of data structures, to compare their efficiency and suitability for solving various problems, to design complex and application-specific data structures, and to implement them with efficient algorithms in the programming language of their choice. 2024-01-11T14:32:40Z 2024-01-11T14:32:40Z 1 978-618-228-182-6 http://repository.kallipos.gr/handle/11419/12117 http://dx.doi.org/10.57713/kallipos-414 el 1 378 application/pdf application/pdf application/pdf application/pdf |