Εισαγωγή στις Ανοικτές Δομές Δεδομένων

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

Πλήρης περιγραφή

Λεπτομέρειες βιβλιογραφικής εγγραφής
Κύριοι συγγραφείς: Morin, Pat, Τζουραμάνης, Θεόδωρος (Μετ.), Μάρκου, Ευριπίδης (Μετ.), Μανωλόπουλος, Ιωάννης (Μετ.), Tzouramanis, Theodoros (Tr.), Markou, Euripides (Tr.), Manolopoulos, Yannis (Tr.)
Μορφή: 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