M.Sc. in Informatics Engineering

Hellenic Mediterranean University

Data Structures and Algorithms

Module Title: Data Structures and Algorithms

Teaching hours: 39
Credits: 7,5
Semester: 2nd
Instructor: Fragopoulou Paraskevi Professor

Course Objectives

The course commands a central role in computer science it both theoretical and practical levels, in many cases covering themes beyond the subject of informatics. The course strives for students to understand fundamental ways or data organization in computer memory and to learn and implement techniques for the handling of that data. Special attention is placed on creating new data algorithms with an obvious result on the dexterities of students to handle such problems.

Indicative Syllabus

  • Introduction to Algorithms
  • Nomenclature
  • Problem Types
  • Fundamental Data Structures
  • Lists
  • Graphs
  • Trees
  • Efficiency of Algorithms
  • Brute Force
  • Sorting (Selection sort, Bubblesort)
  • Search (σειριακή).
  • Wandering Salesman
  • Divide and Conquer
  • Sorting (Mergesort, Quicksort).
  • Binary Search
  • Binary Tree traversal
  • Handling of large integers
  • Decrease and Conquer
  • Insertion Sort
  • DFS, BFS Search
  • Constant factor reduction algorithms
  • Variable factor reduction algorithms
  • Transformation Algorithms
  • Inverse Matrix, determinant
  • AVL, 2-3 Trees
  • Heapsort
  • Dynamic Programming
  • Warshall and Floyd Algorithms
  • Best BST.
  • Greedy Algorithms
  • Prim, Kruskal, Dijkstra algorithms
  • Huffman trees
  • Solution Optimization
  • Capabilities
  • Limits
  • Decision Trees
  • P and ΝΡ Problems

Bibliography:
[1] Algorithm Design: Foundations, Analysis, and Internet Examples
[2] Michael T. Goodrich and Roberto Tamassia
[3] John Wileay & Sons, Inc, ISBN: 0-471-38365-1