30DaysCoding.com Complete Data structures and Algorithms Roadmap Resources, Notes, Questions, Solutions In this document, we’ve covered all the amazing data structures and algorithms that you need to study for interviews. Reviewing these topics will make you a better problem solver, a better developer, and help you ace your next technical coding interviews. If you have any questions along the way, feel free to reach out by emailing
[email protected]. Our Aim - Our aim is to help you become a better problem solver by gaining knowledge of different data structures, algorithms, and patterns. - We want you to first understand the concepts and visualize what’s going on, then you can move forward with more questions. - Most phone interviews require you to be a good communicator and explain your approach, even before you write the solution. It’s important to understand the core concepts and then work on extra stuff. ⭐ ⭐ ⭐There are thousands of questions out there that you can solve, but computer science and coding is much more than just learning data structures. Building and developing something is the core of computer science. So, if you’re actually interested in computer science, then most of your time should go in learning new frameworks and building stuff. Another important aspect of coding is to explore! The more you explore -> the closer you get to your interests. Good luck! Practice - Practicing 150-200 questions will give you the confidence to approach new problems. Solving only 2 questions for 75 days is not a lot if you think about it!
30DaysCoding.com - Consistency is the key. Finish this guide in 75-90 days. Don’t rush it from today. Take your time, revisit topics after a while, read and watch a lot of videos, explore things out there to eventually become a better version of yourself. - Enjoy the process and start today. I’m sure you’ll do great. Have fun. _______________________________________ _______________________________________ Arrays Introduction ⭐ Informally, an array is a list of things. It doesn’t matter what the things are; they can be numbers, words, apple trees, or other arrays. Each thing in an array is called an item or an element. Usually, arrays are enclosed in brackets with each item separated by commas, like this: [1, 2, 3]. The elements of [1, 2, 3] are 1, 2, and 3. - Introduction to Arrays - https://www.cs.cmu.edu/~15122/handouts/03-arrays.pdf - An Overview of Arrays and Memory (Data Structures & Algorithms #2) - What is an Array? - Processing Tutorial Let’s discuss some of the most common patterns that concern arrays. 2D matrices are also arrays and are very commonly asked about in interviews. A lot of graph, DP, and search based questions involve the use of a 2D matrix. We’ve discussed patterns such as these in each section below. It’s important to understand the core concepts so make sure to check it out. Hash maps, tables ⭐ A hash table is a data structure that implements an associative array abstract data type, a structure that can map keys to values. In other words, we can store anything in the form of key value pairs. Example: map
, means that this is a hashmap where we store string key and value pairs.