read

I had a coding challenge sent to me recently and only after attempting the problem did I realize how unprepared I was (despite working through easy LeetCode problems weekly). I took the time to reflect on why my current approach wasn’t working. I came to the conclusion that even though I could work through and find the solutions of the problems, my lack of understanding of the fundamentals when it came to data structures and algorithms were weighing me down.

So in order to better prepare for them, I started to look into Cracking the Coding Interview to see how I can better improve my technical skills.

According to the author of CTCI, here is a list of the basic absolute, must-have knowledge when it comes to data structures:

Data Structures

  1. Linked Lists
  2. Trees, Tries, and Graphs
  3. Stacks and Queues
  4. Heaps
  5. Vectors / ArrayLists
  6. Hash Tables

What are Data Structures?

A data structure is a data organization, management, and storage format that enables efficient access and modification.

So quite simply, data structures are just ways of organizing data. It’s important to understand and be able to identify data structures because you want to pick the data structure that’s the most optimal for the problem. Not only are interviewers more interested in seeing how candidates use these tools to solve a problem but they want to know why the candidate chose this tool versus the others.

In the next series of DSA, I will begin to go down the list and delve deeper into the details of data structures.

Blog Logo

Yvonne Pham


Published

Image

Yvonne

From a chemist to a full-stack software developer. Experienced with Ruby and JavaScript based programming.

Back to Overview