This course teaches a calculus that enables precise quantitative predictions of large combinatorial structures. In addition, this course covers generating functions and real asymptotics and then introduces the symbolic method in the context of applications in the analysis of algorithms and basic structures such as permutations, trees, strings, words, and mappings.
Analysis of Algorithms aims to enable precise quantitative predictions of the properties of large combinatorial structures. The theory has emerged over recent decades as essential both for the scientific analysis of algorithms in computer science and for the study of scientific models in many other disciplines, including probability theory, statistical physics, computational biology and information theory. This course covers recurrence relations, generating functions, asymptotics, and fundamental structures such as trees, permutations, strings, tries, words, and mappings, in the context of applications to the analysis of algorithms.
Form of education
Formal education level
Recommended age for informal learning
16-18, 19-25, 25-45
Mathematics, Software and applications development and analysis, Information and Communication Technologies (ICTs)
Provider’s course code
Knowledge level entrance requirements
Math through calculus and basic familiarity with programming in a modern language such as Java. Knowledge of basic algorithms and data structures from Algorithms, Part I is helpful but not required.
Previous courses entrance requirements
Output knowledge, abilities, skills
The learner will know recurrence relations, generating functions, asymptotics, and fundamental structures such as trees, permutations, strings, tries, words, and mappings, in the context of applications to the analysis of algorithms.
Participants number limit
Groups formation by readiness level
Training materials forms
texts, video lecture, presentation
Interactivity in training materials
Collaborative learning presence
Discussions, forums presence
Webinars, video conferences presence
Course start date
Course end date
Opportunity to enter after start
Learning types (sync/async)
Personal learning path possibility, course individualization
Windows, Linux, MacOS
Firefox, Chrome, IE
iPad, Laptop, Desktop
Mastery learning, Scaffolding