A data structure is just a way of organizing data on a computer. Think of it like organizing your files. You could throw everything into one big folder (an array). You could label things with sticky notes so you can find them instantly (a hash map). You could stack papers in a pile where you can only grab the top one (a stack). You could arrange things in a hierarchy like a family tree (a tree).
Different data structures are good at different things. Some are fast at adding data. Some are fast at searching. Some keep things in order. Choosing the right one is the first step to writing good code.
An algorithm is a set of steps to solve a problem. If you have a phone book and need to find Smith, you would not read every name from the start. You would flip to the middle, see if Smith is before or after, then repeat. That is binary search, and it is an algorithm.
Most problems can be solved in more than one way. The difference is often speed. An algorithm that takes 1 millisecond vs one that takes 10 seconds is the difference between a working app and a broken one.
There are 11 modules, ordered so that each one builds on the previous. You can go through them in order, or jump around once you unlock them.
Learn. Read through the theory sections with code examples and visualizations.
Practice. Solve problems that test your understanding. Start with easy ones, work up to harder ones.
Exam. Pass a short quiz to lock in the module. Once you pass, the next module unlocks.
Ready to start?
Click “Mark as Read” below to unlock Module 1.