Discrete Mathematics
Combinatorics and Probability theory:
Basic combinatorics: permutations, combinations, variations. Inclusion/exclusion principle.The aspects of probability theory: random variable, conditional probability, independent events, Bayes’ theorem, expected value.
Graph theory and Graph algorithms:
Definitions and properties of different types of graphs: simple, undirected/directed, tree, planar, eulerian and hamiltonian graph, spanning tree, TSP (Travelling salesman problem) etc. DFS (Depth First Search) and BFS (Breadth First Search), Dijkstra’s, Prim’s and Kruskal’s algorithms.
Modeling:
Project where the student implements and tests simple graph algorithms in a programming language of their choice, e.g. Python.