Data Structures (MAE681)
General
School |
School of Science |
---|---|
Academic Unit |
Department of Mathematics |
Level of Studies |
Undergraduate |
Course Code |
MAE541 |
Semester |
5 |
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) | - |
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:
|
---|---|
General Competences |
|
Syllabus
- Elements Of Analysis Of Algorithms
- Abstract Data Types
- Strings
- Arrays
- Algorithms for Searching, Sorting, Selection
- Lists (Single 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 |
| ||||||||||
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
- Data structures, algorithms and applications using c ++, Sahnii Sartaj, Publicer A. Tziola (Greek translation)
- Algorithms in C ++, parts 1-4: fundamental concepts, data structures, sorting, searching, Robert Sedgewick, Prentice Hall (Greek translation)
- Algorithms in C, parts 1-4: fundamental concepts, data structures, sorting, searching, Robert Sedgewick, Prentice Hall (Greek translation)
- Data Structures with C, Nicholas Misirlis (Greek)
- Data Structures, Bozanis Panagiotis, Publicer A. Tziola (Greek)
- Michael T. Goodrich, Roberto Tamassia, and David M. Mount, Data Structures and Algorithms in C ++, John Wiley & Sons
- Michael Goodrich, Roberto Tamassia, Data Structures and Algorithms in Java, Publicer DIAYLOS
- Cormen, Leiserson and Rivest, Introduction to Algorithms, MIT Press, 1990. (there is also a translation from the University of Crete)
- Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley
- Clifford A. Shaffer, Data Structures and Algorithm Analysis, ebook, http://people.cs.vt.edu/shaffer/Book/
- Website: opendatastructures.org