This video is free to watch - hope you enjoy it! If you like what you see, there's a ton more where that came from...

# Review: Data Structures

Let’s review data structures! It’s fun and exciting! In this section you’ll review and then build your very own data structures along with me! I’ll be using JavaScript to code mine, but feel free to use whatever language you like.

This is premium content - you can own it in just 30 seconds!

## The Code

To get you off the ground, feel free to use the code bits below. The first is for a basic tree Node:

``````class Node{
constructor(val){
this.value = val;
this.children = [];
}
const newNode = new  (val);
this.children.push(newNode);
return newNode;
}
}
module.exports =  Node;
``````

Here’s one for a BinaryTreeNode

``````class BinaryTreeNode{
constructor(val){
this.value = val;
this.right = null;
this.left = null;
}
const newNode = new BinaryTreeNode(val);
this.right = newNode;
return newNode;
}
const newNode = new BinaryTreeNode(val);
this.left = newNode;
return newNode;
}
}
``````

## The Code

Code for this video (and for the entire series) can be found in the production GitHub repo.

• ### Let's Get Started!

This is a quick introduction to what this production is all about and what (I hope) you'll learn. Please watch it. There are some supplies you'll need to get and some mental space you'll need to clear if you're to get the most out of this production.

• ### Review: Big-O Notation

It's a thing you'll need to know if you plan to get through any interview. It's actually quite useful and in this post I'll hopefully make the case that's it's simple as well.

• ### Review: Data Structures

Let’s review data structures! It’s fun and exciting! In this section you’ll review and then build your very own data structures along with me! I’ll be using JavaScript to code mine, but feel free to use whatever language you like.

• ### Review: Algorithms and Strategies

Now the fun starts! We have our data structures and now we need to focus on the algorithms we’re likely to be asked about in an interview. But that’s not enough! What you really need to do is to be able to tease out the strategy that you’ll need to use in combination with your data structures and algorithms. That will help you answer almost any interview question.

You're not going to make it through this section unless you have the right frame of mind. Simply wanting a job isn't enough - you need to calm yourself and focus.

• ### Getting Past the Screener

Before you get to the white board you'll likely have to pass an introductory screening interview - a short call (or in person meeting) to suss out what you know.

• ### JavaScript: What Time Is It?

Sometimes a potential interviewer will 'cosplay' with you - pretending that you work at the company and seeing how you might solve one of their realworld problems.

• ### Understanding the Mechanics of The Interview Question

Don't hate me... and PLEASE don't skip this video. Let's walk through Fibonacci together as a way of understanding how interviewers will flex and extend a single question to dig into your brain.

• ### Practice: Stock Price Calculation

This is a real interview question that comes straight from Amazon. You'll be writing this one by hand so remember your strategies.

• ### Practice Question: Product of All Numbers But This

A straightforward problem that, at first, seems daunting - until you break it down and apply the strategies you know.

• ### Practice Question: Smallest Range of K Lists

This is a tough one and you might struggle with it some. If you do, practice speaking aloud to get help from the interviewer.

• ### Jon Skeet: Creating a C# Linter

Another traditional question: create a linter for X language. This is more about parsing a string and remembering where you are within it.

• ### Jon Skeet: Falling From Great Heights

Not all interview questions have to do with code - some are purely logical, designed to see how you would try and solve a really, really hard problem. Skeet couldn't figure this one out...

• ### Jon Skeet: Binary Tree Troubles

It's a rule of interviews: 'ask a binary tree question' and that's exactly what I do in this video with Jon. Traversing in different ways, trying to balance along the way.

• ### Jon Skeet: Creating a Queue from Scratch

This is another very popular question from larger companies, and requires you to be familiar with linked lists, arrays and stacks.

• ### Jon Skeet: Anagram Checker

Let's end things with one that's a bit simpler - creating a string walking function that evaluates anagrams.

[[prev.summary]]

[[next.summary]]