Courses and Syllabus
December 22, 2025 2026-01-19 10:37Courses and Syllabus
DAMSL-090 Data Structures
Type – Elective
Course Code – DAMSL-090
Teaching Semester – A Semester
ECTS Credits – 5
Student Performance Evaluation
Homework and/or Lab Assignments, Final exam/projectt
Prerequisite Courses
Python Programming
Syllabus
- Introduction to the concept of data structure (representation of data in memory, different ways of organizing it, the structure as a basis for algorithmic techniques)
- Introduction to complexity and its importance as an analysis tool
- Introduction to the Python language
- Tables
- Stacks and queues.
- Linked lists, singly linked, doubly linked, circular lists
- The concept of sorting and simple algorithms
- Trees (binary trees, binary search trees, etc.)
- Hash table
- Structures in graph form
Learning Outcomes
- Understanding the concept of data structure.
- Implementation of different structures
- Evaluation of their characteristics
- Understanding of basic algorithmic features.
- Perception of the suitability or otherwise of a structure for a computational problem
- Ability to use the above skills to solve computational problems
- Basic use of Python to implement computing solutions
DAMSL-091 Numerical Algorithms
Type – Elective
Course Code – DAMSL-91
Teaching Semester – A Semester
ECTS Credits – 5
Student Performance Evaluation
Homework and/or Lab Assignments, Final Exam and/or Project
Prerequisite Courses
Calculus I, Linear Algebra I, Python
Syllabus
- Introduction to probability: Random experiments, probability axioms, conditional probability, law of total probability, Bayes’ rule, and counting methods.
- Random variables and their distributions: Single and multiple random variables, expectation, variance, moment generating factors, inequalities.
- Limit theorems: Convergence of random variables, weak law of large numbers, central limit theorem.
Learning Outcomes
Upon completion of the course the students will have:
- Good knowledge of the basic concepts in probabilities: random experiments and axioms, conditional probability, Bayes law.
- Good knowledge of random variables and their distributions, expectation, and variance. Law of large numbers.
DAMSL-090 Data Structures
Syllabus
- Introduction to the concept of data structure (representation of data in memory, different ways of organizing it, the structure as a basis for algorithmic techniques)
- Introduction to complexity and its importance as an analysis tool
- Introduction to the Python language
- Tables
- Stacks and queues.
- Linked lists, singly linked, doubly linked, circular lists
- The concept of sorting and simple algorithms
- Trees (binary trees, binary search trees, etc.)
- Hash table
- Structures in graph form
Learning Outcomes
- Understanding the concept of data structure.
- Implementation of different structures
- Evaluation of their characteristics
- Understanding of basic algorithmic features.
- Perception of the suitability or otherwise of a structure for a computational problem
- Ability to use the above skills to solve computational problems
- Basic use of Python to implement computing solutions
DAMSL-202 Numerical Analysis
Syllabus
- Root finding algorithms: Bisection, Newton’s and Newton’s like methods
- Methods for solving linear systems: Direct methods (LU, Cholesky, etc), Iterative methods (Jacobi, Gauss-Seidel, SOR, Steepest Descent, Conjugate Gradient)
- Least Squares problem
- Interpolation and Approximation
- Numerical Integration
- Solving initial value problem for ordinary differential equations
Learning Outcomes
After the successful completion of the course the students will be able to
- Analyse basic numerical algorithms and their characteristics
- Implement numerical algorithms/methods in modern computational frameworks
- Analyse the advantages and disadvantages of numerical algorithms
- Obtain numerical approximations/solutions of basic applied problems
Student Performance Evaluation
The final grade will be based on homework/lab assignments and a final exam/project
Prerequisite Courses
Calculus I, Linear Algebra I, Python
DAMSL-202 Numerical Analysis
Type – Elective
Course Code – DAMSL-090
Teaching Semester – A Semester
ECTS Credits – 5
Student Performance Evaluation:
The final grade will be based on homework/lab assignments and a final exam/project
Prerequisite Courses: Calculus I, Linear Algebra I, Python
Syllabus
- Root finding algorithms: Bisection, Newton’s and Newton’s like methods
- Methods for solving linear systems: Direct methods (LU, Cholesky, etc), Iterative methods (Jacobi, Gauss-Seidel, SOR, Steepest Descent, Conjugate Gradient)
- Least Squares problem
- Interpolation and Approximation
- Numerical Integration
- Solving initial value problem for ordinary differential equations
Syllabus
- Root finding algorithms: Bisection, Newton’s and Newton’s like methods
- Methods for solving linear systems: Direct methods (LU, Cholesky, etc), Iterative methods (Jacobi, Gauss-Seidel, SOR, Steepest Descent, Conjugate Gradient)
- Least Squares problem
- Interpolation and Approximation
- Numerical Integration
- Solving initial value problem for ordinary differential equations