Simple play icon Course
Skills

An Introduction to Algorithmics

by Rasmus Amossen

An introductory guided tour to the field of data structures, algorithms, and complexity analysis. This course is loaded with a ton of practical examples, and focuses on intuition, rather than formulas and mathematical proofs.

What you'll learn

The phrase "Get Great Performance for Free!" sounds like a quote from bad commercial, but when it comes to algorithms and data structures, that may actually be the case. This introductory course shows how the use of common data structures may simplify and even significantly impact performance of solutions to typical real-life everyday programming problems. The course gently introduces the viewer for "complexity analysis" which makes it possible to spot a poorly (and a great) performing program, even without the need for executing it. Complexity analysis is an invaluable tool or "language" for discussing performance with colleagues - and it's not even difficult. After having covered the most common data structures, the course continues to describe some general strategies (algorithms) to efficiently solve more high-level problems. Like with data structures, it is shown how a careful choice of problem solving strategy can dramatically reduce computation time. The last part of the course shifts the focus a bit and shortly teases a few popular theoretical subjects and explains, at a purely intuitive level, what the complexity classes P, NP, and the famous problem, P = NP, is all about.

About the author

Rasmus is a software developer and architect, an entrepreneur and an idealist, with a background as PhD in the field of computer science, databases, and algorithms and with a long standing passion for teaching. He specializes in C#/.NET and SQL Server when it comes to software development, while the focus has been on constructive algorithms for bin packing and data mining related algorithms, when it comes to research activities.

Ready to upskill? Get started