Course Details
Course Code (English)
*
Semester
*
Title (English)
*
Lecture Hours (Weekly)
ECTS Credits
*
Course Type (English)
Prerequisites (English)
Course URL (e.g., on e-class)
Learning Outcomes (English)
The objective of this course is to teach students how to structure data in order to support efficient solution of basic algorithmic problems and to learn the basic data structures toolbox. Students will learn: Basic as well as advanced data structures. Algorithms for searching and sorting. Designing basic algorithms as well as measuring their performance. Implementing data structures using the C programming language.
General Competencies (English)
Independent work Promoting free, creative and deductive thought
Course Content (English)
1st week lecture: Introduction. Measuring performance. 2nd week lecture: Basic Data Structures: Stack, Queue, List 3rd week lecture: Implementing Stack and List using C 4th week lecture: Recursion and Trees. Huffman Encoding 5th week lecture: Graphs Graph Traversal 6th week lecture: Priority Queues 7th week lecture: Search Trees. Dictionaries. 8th week lecture: Balanced Search Trees. AVL Trees. 9th week lecture: 2-3-4 Search Trees. B-Trees. 10th week lecture: Searching and Sorting Algorithms I 11th week lecture: Searching and Sorting Algorithms II 12th week lecture: Hashing 13th week lecture: Data Structures for Strings. Tries. Suffix Trees. Suffix Arrays
Use of ICT (English)
eclass platform, youtube channel
Is it elective?
Άγνωστο
Ναι
Όχι
Load within semester (Hours)
Lecture Hours
Lab Hours
Independent Study
*
Project Work
*
Lab Report
*