**The algorithms module **covers a broad range of algorithms in-depth, yet makes their design and analysis accessible to all levels of readers. Start with an introduction to P and NP problems in Computer Science and then explore various concepts, such as stable sorting algorithms or Big-O theory.

The **artificial intelligence module** explores the concepts and algorithms at the foundation of modern artificial intelligence, diving into the ideas that give rise to technologies like game-playing engines, handwriting recognition, and machine translation. Start by reading what are the prerequisites for studying AI, and then dive into the topic by learning the differences between supervised, unsupervised and reinforcement learning strategies.

In the **graph theory module,** we will learn how GPS systems find the shortest routes, how engineers design integrated circuits and what is graph colouring and how it is used in the real world. Intro to graph theory is a good place to start.

The **core concepts module,** discusses the most fundamental concepts, such as data structures, math and logic or programming paradigms. Start with the intro to the most commonly used data structures, and then explore the variety of topics.

Studying in the Computer Science program and wanting to **learn more about Operating Systems, Networking or Security? The Operating Systems module** covers all the above topics. Interested in exploring common networking protocols? Wanting to learn what’s the difference between authentication and authorization? Trying to understand how OS works in detail? We have it all in here!

Writing a research paper or report and struggling with Latex – start with our tutorials with lots of examples and** build your knowledge to be a Latex expert!**