A from-zero, hands-on beginner project that builds the conceptual base under every specific algorithm. Instead of cataloguing algorithms, it teaches you to think about them: how to count the work a piece of code does and express it in Big-O, why O(n^2) and O(n) and O(log n) feel so different at scale, how recursion and iteration relate, how a loop invariant proves an algorithm correct, and how to weigh two correct solutions against each other on time and space. Each step adds a small, tested Python module and an experiment you can run, so the abstract ideas land on concrete code. This is the conceptual gateway you take before binary search, sorting, graphs, or DP make real sense.
- Python
- pytest
- Big-O
- Algorithms