MATH602 – Mathematics for Programming
Mathematics for Programming
To enable students to obtain the mathematical skills to facilitate an in-depth understanding of advanced programming techniques. Students will be able to solve problems in recurrence functions, asymptotic functions, algorithmic puzzles, combinatorics and graph theory and advanced topics in probability and statistics.
- Directed hours
- Self directed hours
- Total learning hours
- Learning Outcomes
- 1. Discuss, examine and apply common recurrence functions and asymptotic functions to
analyse common algorithms
2. Solve algorithmic puzzles with average complexity
3. Discuss and apply combinatorics, probability and statistics to analyze algorithms and
4. Apply common problems of graph theory used in computer programs
- - Recurrence functions and generating functions
- Definition and examples.
- Recurrence functions used in common algorithms.
- Growth rates and Recursion tree.
- Asymptotic function and big O notation
- Definition and examples
- Using Big O notation to analyse common algorithms
- Growth rates of functions and analysis pf algorithms
- Algorithms and mathematical puzzles
- Missing number, Fake coin detection, Max-Min weights, Tower of Hanoi
- Summation formulas
- Sum and product principles
- K-elements permutation of a set
- Counting subsets of a set
- Graph theory.
- Definitions and representations
- Depth first search and breadth first search
- The shortest path problem and Dijkstra's algorithm
- Minimum spanning tree
- Probability and statistics for advanced programming
- Introduction to NP problems and classic examples
- Teaching and Learning Strategy
- Teaching methods will involve theoretical and practical classes which may include but not limited to lectures, class discussions, tutorials, case studies, simulations, computer laboratory work, group activities, face-to-face and online activities.
- Assessment Criteria
- In order to receive a passing grade, students must achieve a minimum 40% average over all supervised tests and achieve 50% overall for the module.
- Learning and Teaching Resource
- Wintec Learning Management Systems, Computer Laboratory
- Required Textbooks
- An extended reading list will be supplied by the tutor at commencement of the module. This will be updated annually.