Undergraduate Elective 1023

Από Περιγράμματα - Τμήμα Μαθηματικών
Μετάβαση σε: πλοήγηση, αναζήτηση


Γενικά

Σχολή Σχολή Θετικών Επιστημών
Τμήμα Τμήμα Μαθηματικών
Επίπεδο Σπουδών Προπτυχιακό
Κωδικός Μαθήματος MAE681
Εξάμηνο 6
Τίτλος Μαθήματος Δομές Δεδομένων
Αυτοτελείς Διδακτικές Δραστηριότητες Διαλέξεις και Εργαστηριακές Ασκήσεις (Εβδομαδιαίες Ώρες Διδασκαλίας: 3, Πιστωτικές Μονάδες: 6)
Τύπος Μαθήματος Ειδίκευσης
Προαπαιτούμενα Μαθήματα
Γλώσσα Διδασκαλίας και Εξετάσεων Ελληνική
Το Μάθημα Προσφέρεται σε Φοιτητές Erasmus Ναι (στην Αγγλική γλώσσα)
Ηλεκτρονική Σελίδα Μαθήματος (URL) Δείτε το eCourse, την Πλατφόρμα Ασύγχρονης Εκπαίδευσης του Πανεπιστημίου Ιωαννίνων.

Μαθησιακά Αποτελέσματα

Μαθησιακά Αποτελέσματα Το μάθημα αποτελεί μια εισαγωγή στις βασικές δομές δεδομένων όπως πίνακες, αλυσίδες, λίστες, στοίβες, ουρές, δένδρα, γραφήματα. Εξετάζονται θέματα ιδιοτήτων, υλοποίησης, πράξεων σε δομές και πολυπλοκότητας των πράξεων αυτών, καθώς και εφαρμογών των βασικών αυτών δομών. Βασικός σκοπός είναι η σχεδίαση και χρήση κατάλληλων δομών δεδομένων για την αποθήκευση και ανάκτηση των δεδομένων ενός προβλήματος με σκοπό την πιο αποτελεσματική επεξεργασία τους κατά την διαδικασία επίλυσης του προβλήματος. Μετά την ολοκλήρωση του μαθήματος ο φοιτητής / τρια:
  • Έχει κατανόηση των βασικών δομών δεδομένων και των διαφόρων τρόπων υλοποίησης τους σε κάποια γλώσσα προγραμματισμού.
  • Μπορεί να επιλέξει κατάλληλες δομές για την αποτελεσματικότερη αποθήκευση των δεδομένων ενός προβλήματος και την επεξεργασία τους με αλγορίθμους για την επίλυση του προβλήματος.
Γενικές Ικανότητες
  • Αυτόνομη εργασία
  • Ανάλυση δεδομένων προβλήματος
  • Μπορεί να χρησιμοποιήσει δομές δεδομένων για επίλυση προβλημάτων σε άλλες επιστημονικές περιοχές ή γενικά στον εργασιακό χώρο.


Περιεχόμενο Μαθήματος

  • Στοιχεία Πολυπλοκότητας Αλγορίθμων
  • Αφηρημένοι Τύποι Δεδομένων
  • Πίνακες
  • Αλυσίδες
  • Αλγόριθμοι Αναζήτησης, Ταξινόμησης, Επιλογής
  • Λίστες (Απλά Συνδεδεμένες Λίστες, Διπλά Συνδεδεμένες Λίστες, Κυκλικές Λίστες, Γενικευμένες Λίστες
  • Στοίβες
  • Ουρές, Διπλοουρές, Ουρές Προτεραιότητας
  • Δένδρα (Γενικά Δένδρα, Δυαδικά Δένδρα, Δυαδικά Δένδρα Αναζήτησης, Οπισθοσυνδεδεμένα Δένδρα)
  • Σωροί
  • AVL-Δένδρα, 2-3 Δένδρα, 2-3-4 Δένδρα, Β-Δένδρα
  • Κατευθυνόμενοι Γράφοι
  • Μη Κατευθυνόμενοι Γράφοι
  • Χειρισμός Συνόλων
  • Κατακερματισμός
  • Δυναμική Διαχείριση Μνήμης


Διδακτικές και Μαθησιακές Μέθοδοι - Αξιολόγηση

Τρόπος Παράδοσης Πρόσωπο με πρόσωπο
Χρήση Τεχνολογιών Πληροφορίας και Επικοινωνιών Ναι
Οργάνωση Διδασκαλίας
Δραστηριότητα Φόρτος Εργασίας Εξαμήνου
Διαλέξεις (13Χ3) 39
Αυτοτελής Μελέτη 78
Επίλυση Ασκήσεων - εργασίες 33
Σύνολο Μαθήματος 150
Αξιολόγηση Φοιτητών Γραπτή τελική εξέταση (70%) που περιλαμβάνει:
  • ερωτήσεις σχετικές με την θεωρία των δομών δεδομένων
  • Ερωτήσεις κρίσεως υπό την μορφή ασκήσεων που απαιτούν την χρήση δομών δεδομένων
  • Ερωτήσεις υλοποίησης δομών δεδομένων

Εργαστηριακές ασκήσεις/Πρόοδος(30%)


Δείτε την υπηρεσία Εύδοξος. Συγγράμματα και άλλες πηγές εκτός της υπηρεσίας Εύδοξος:


General

School School of Science
Academic Unit Department of Mathematics
Level of Studies Undergraduate
Course Code MAE681
Semester 6
Course Title Data Structures
Independent Teaching Activities Lectures and laboratory exercises (Weekly Teaching Hours: 3, Credits: 6)
Course Type Special Background
Prerequisite Courses -
Language of Instruction and Examinations Greek
Is the Course Offered to Erasmus Students Yes
Course Website (URL) See eCourse, the Learning Management System maintained by the University of Ioannina.


Learning Outcomes

Learning outcomes The course is an introduction to basic data structures such as strings, arrays, lists, stacks, queues, trees, graphs. It studies properties and implementation issues as well as basic properties on the data structures and their complexity. It also examines basic applications of the above data structures. The main purpose is the design and use of appropriate data structures for storing and retrieving the data of a problem in order for a most efficient processing during the problem solving process.

After completing the course the student:

  • Has an understanding of basic data structures and the different ways they can be implemented using a programming language.
  • Can choose appropriate data structures for efficiently storing the data of a problem and their use by an algorithm for solving the problem.
General Competences
  • Working independently
  • Problem data analysis
  • Can use data structures for solving problems in other scientific areas or in the workplace.


Syllabus

  • Elements Of Analysis Of Algorithms
  • Abstract Data Types
  • Strings
  • Arrays
  • Algorithms for Searching, Sorting, Selection
  • Lists (Singly Linked Lists, Doubly Linked Lists, Circular Lists, Generalised Lists)
  • Stacks
  • Queues, DeQueues, Priority Queues
  • Trees (General Trees, Binary Trees, Binary Search Trees, Threaded Trees)
  • Heaps
  • AVL-Trees, 2-3 Trees, 2-3-4 Trees, B Trees
  • Directed Graphs, Undirected Graphs
  • Set Manipulation
  • Hashing
  • Dynamic Memory Management


Teaching and Learning Methods - Evaluation

Delivery Face to face
Use of Information and Communications Technology Yes
Teaching Methods
Activity Semester Workload
Lectures 39
Self study 78
Exercises 33
Course total 150
Student Performance Evaluation Written final exam (70%) comprised of:
  • questions about the theory of data structures
  • Questions crisis in the form of exercises that require the use of data structures
  • Exercises testing the understanding of the implementation issues and use of data structures

Laboratory exercises / midterm (30%)


Attached Bibliography

See the official Eudoxus site. Books and other resources, not provided by Eudoxus: