422 cards
This deck is a hands-on review of the core algorithms and techniques that show up again and again in coding interviews and computer science coursework. It walks through classic sorting and searching methods like binary search, bubble sort, merge sort, and quick sort, then moves into graph algorithms such as BFS, DFS, Dijkstra's algorithm, topological sort, and union-find. You'll also practice important problem-solving patterns including the two pointers and sliding window techniques, dynamic programming with Fibonacci and 0/1 knapsack, and Kadane's algorithm for maximum subarray sums. Each card asks you to recall both the concept and a working Python implementation, so you're training understanding and code at the same time.
The deck is a great fit if you're preparing for technical interviews, studying for a data structures and algorithms course, or simply want to keep your Python sharp by revisiting fundamentals from scratch. Because every card combines a definition, a time complexity question, and a coding task, it works well for learners who already have some basic programming experience and want to deepen their problem-solving skills.
To get the most out of your study sessions, try to answer the conceptual question first and write out the code on paper or in an editor before flipping the card. Spacing your reviews over several short sessions beats cramming everything into one long sitting, especially for algorithms where patterns need time to sink in. If you get stuck on an implementation, take a moment to trace through a small example by hand before peeking at the answer. That's where the real learning happens.