Foundations

Algorithms & Data Structures

Sorting, searching, graphs, trees, dynamic programming and computational complexity

3,984
lessons
Skills in this topic
View full skill map →
Algorithm Basics
beginner
Analyse time and space complexity with Big O
Sorting & Searching
beginner
Implement quicksort, mergesort, and heapsort
Graph Algorithms
intermediate
Implement BFS and DFS iteratively and recursively
Dynamic Programming
intermediate
Identify overlapping subproblems
Advanced Algorithms
advanced
Implement backtracking for constraint problems
📚 Continue on Coursera External links · Free to audit
1 / 3 View all →
Intro to Operating Systems 3: Concurrency
📚 External: Coursera ↗
Self-paced
Intro to Operating Systems 3: Concurrency
Opens on Coursera ↗
Python Fundamentals: Apply Data Structures
📚 External: Coursera ↗
Self-paced
Python Fundamentals: Apply Data Structures
Opens on Coursera ↗
Programming in C
📚 External: Coursera ↗
Self-paced
Programming in C
Opens on Coursera ↗
Finding Hidden Messages in DNA (Bioinformatics I)
📚 External: Coursera ↗
Self-paced
Finding Hidden Messages in DNA (Bioinformatics I)
Opens on Coursera ↗
Python Fundamentals for Designers
📚 External: Coursera ↗
Self-paced
Python Fundamentals for Designers
Opens on Coursera ↗
Advanced Programming, Control, and Monitoring Systems
📚 External: Coursera ↗
Self-paced
Advanced Programming, Control, and Monitoring Systems
Opens on Coursera ↗