Introduction to Data Structures and Algorithms

Summary

This course is designed to take your programming skills to the next level by providing you with a strong foundation in data structures and algorithms. Throughout this course, you will learn essential concepts that will help you tackle more complex problems and prepare you for job interviews. It is important to note that while this course serves as a comprehensive introduction, it does not cover the more advanced algorithms and data structures included in our Capstone program.

This course is required if you plan to apply for Capstone. It is optional, but recommended, if you do not intend to apply for Capstone.

Phase

Front-end Development

Prerequisites

Detailed Syllabus

  • Understanding Big O notation and how to determine the time and space complexity of algorithms.
  • Popular sorting algorithm techniques and how to implement them.
  • Leveraging the use of pointers to solve problems with collections.
  • Mastering Binary Search problems, an essential algorithm used to efficiently search through sorted collections of data.
  • Exploring Linked Lists, a fundamental data structure for storing and organizing data, and learning how to manipulate them to solve various problems.
  • Introducing you to recursion, a powerful programming technique that involves a function calling itself, and understanding its role in solving complex problems.
  • Understanding divide and conquer algorithms, a problem-solving paradigm that breaks down complex problems into smaller, more manageable subproblems, leading to elegant solutions.