Data Structures & Algorithms Challenge

Categories: General
Wishlist Share
Share Course
Page Link
Share On Social Media

About Course

In this course, you’ll learn the fundamentals of computer programming by getting in-depth into Data Structures and Algorithms (DSA) for 30 days (or 5 weeks in average). This course is being run in collaboration with top recruitment companies in Kenya i.e. Gebeya and Workforce Africa who will both come in from Week 5 for career workshops and technical interview preparation. Here is what we’ll cover in the next 5 weeks:

  1. Week 1: DSA Foundations
  2. Week 2: Applied Data Structures
  3. Week 3: Divide & Conquer Algorithms
  4. Week 4: Advanced Algorithms
  5. Week 5: Bonus Algorithms & Career Sessions

Acknowledgement(s)

The contents of this course have been curated by technical mentors from Zindua School: Bonaventure Ogeto (DSA Foundations), Cyril Michino (Divide & Conquer), and Dan Walobwa (Data Structures). Projects and challenges associated with the course have been sourced from Leetcode, which is the top resource of Data Structures and Algorithms preparation. We appreciate Gebeya and Workforce Africa, both top recruitment companies in Africa, for stepping in for the career and technical interview preparation segments.

Show More

Course Content

0.0 Welcome to the Challenge

  • Overview of the challenge
    00:00
  • Before you begin…
    00:00

1.1 Big-O Notation & Search Algorithms
An introduction to algorithms: understand the Big-O Notation and explore array search algorithms i.e. Linear Search and Binary Search

1.2 Introductory Data Structures
Learn about Arrays and Hashmaps, the simplest and most commonly used data structures in all programming languages.

1.3 Basic Sorting Algorithms

1.4 Recursive Sorting Algorithms

1.5. Week 1 Quiz & Challenges

2.1: Linear Data Structures

2.2 Foundations of Trees

2.3 Tries

2.4 Foundations of Graphs

3.1 Understanding Greedy Algorithms

3.2 Foundations of Dynamic Programming

3.3 Zero-One Knapsack Dynamic Programming

3.4 Unbounded Knapsack Dynamic Programming

4.1 Longest Common Subsequence Dynamic Programming
Longest Palindromic Subsequence & Egg-Dropping DP Patterns

4.2 Dynamic Programming in Grid/Graphs
Dynamic programming using n-dimensional arrays. Apply this in the Floyd Warshall shortest-path algorithm

4.3 Backtracking & Graph Pathfinding
Dijkstra's, A* Pathfinding, and Bellman-Ford Shortest Path

4.4 Advanced Graph Algorithms
NP-Complete algorithms such as Traveling Salesman and Graph Algorithms such as Vertex Colouring and Topological Sorting

5.1 BONUS: More Software Dev Algorithms

5.2 BONUS: Data Science Algorithms

5.3 BONUS: All Challenge Recordings

5.4 BONUS: Tech Career Preparation

5.5 Conclusion & Capstone

Student Ratings & Reviews

No Review Yet
No Review Yet