Coding Interview Preparation Guide

Introduction

Welcome to my guide on how to study and master Data Structures and Algorithms. What I try to achieve with this guide, is an easy organized way to get REALLY good with using Data Structures and Algorithms. There are lots of resources out there and there is a lot of confusion on how to approach this vast topic in order to get comfortable with solving any type of problems at any difficulty level. I will try to categorize the MUST KNOW Data Structures and Algorithms and the steps to learn them in order to create a solid toolbox in such a way that even when you get a problem that you didn't see before, you are able to use the tools you gained to solve it. This is also a guide for future me, to help me remember things I migh forget along the way.

Approach

My approach is to first start with the most important Data Structures. I will create "Important to Remember Cards" bellow and I will code each one individually in both Python and Java so that I can get a deep and really good understanding of each Data Structure. You don't need to do this but for me it is important to feel that I start on very solid grounds.

1. Data Structures

1.1 Arrays

1.2 Strings

1.3 Stacks

1.4 Queues

1.5 Linked Lists