Data structures and algorithms are a core part of FAANG software engineer interviews, and they're seemingly the bane of every software engineer's existence. However, so many software engineers don't learn these concepts properly.
Here are the core points from the video:
- In this example, we cover 2 sum, a classic data structures and algorithms problem that many companies use on phone screens. Here's how to learn it properly:
- Bad: Memorizing all the code behind the optimal implementation.
- Good: "Look for the difference and use a HashSet."
- All DSA problems will have this core insight that "unravels" the entire thing. Once you find and truly understand this insight, the implementation should flow naturally.
- This is also a sign of higher learning via "thinking in terms of abstractions". Your brain is a lot more powerful if it is able to take something more singular and high-level and convert it into the nitty gritty. Memorizing everything at the lowest level simply isn't scalable.