Data Structures Conclusion
Learning Goals
- Review what you learned in this section
Recap
In this section, you learned many common data structures, including:
- Sets
- Stacks
- Linked Lists
- Trees
For each of these data structures, you learned how to implement common methods, identify the runtime using Big O notation, and how to evaluate the tradeoffs of choosing one data structure over another.
By gaining experience with these common data structures, you should have an easier time learning some other common data structures in the future. The best thing to do from here is practice! It's important to see more problems like the ones you've worked on in this section, so that you can start identifying patterns and build up an intuition for determining which data structures will help with different kinds of problems. Check out the resources section for some ways to continue building your skills.
Resources
- LeetCode Problems
- These problems are organized by difficulty and are searchable. Start with easy problems and work your way up — the medium and hard problems are quite challenging! It can be helpful to search using the 'Tags' feature to search for several problems that use the same data structure to get some reps and identify patterns.
- FIS DSA 100+ is a curated list of over 100 LeetCode problems chosen by Flatiron School.
- LeetCode Patterns is a site that lets you browse LeetCode problems grouped by patterns, so you can work on spotting common patterns to problems through repetition.
- HackerRank Interview Prep Kit has groups of challenges by common patterns and data structures for practice.
- Tech Interview Handbook has curated interview prep materials, including algorithm material that has example questions for different data structures.
- BaseCS is a blog devoted to the basics of computer science with great visuals.