About this Course
Algorithms and data structures are the essential frameworks for solving almost any computer engineering problem. You need a fundamental grasp of these tools to help you understand how computers and programming languages work and what makes a specific solution the optimal one. To choose the right approach to a particular problem and forge an effective solution, you need to understand the relative strengths and weaknesses of each of these tools.
In this course, you’ll examine, create, compare and test the major types of algorithms and data structures. We’ll cover how to optimize the skills you’ve already mastered and how to create more advanced tools as necessary. Learn to think like a computer scientist, and take an engineering approach to solving complex problems.
The course is programming language-agnostic, and the homework and labs can be in any language, such as Java, C# or Python.
You can take this course on its own or use it to prepare for one of these programs:
Beginning programmers who want to deepen their knowledge, and those who want to take more advanced programming courses and pursue a career in software engineering.
WHAT YOU’LL LEARN
- Number base systems
- Sorting algorithms and Big O analysis
- Techniques for using arrays and dynamic arrays, lists and stacks and queues, and hash tables and binary trees
GET HANDS-ON EXPERIENCE
- Build data structures from scratch
- Create and implement algorithms from scratch
- Practice common job interview problems