‫So in this video, I'm going to do a quick course overview and talk about how you can get the most out
‫of this course.
‫Please watch this video to the end.
‫In the last half of this video, I'll talk about how to access the coding exercises, which are very
‫important.
‫So this panel on the right is what you would see in the course in the browser.
‫And I do have some students that don't want to cover anything conceptual.
‫They just want to get right into writing code.
‫If that is, you go directly to the Linked List section and start with a constructor video.
‫So there'll be two things I'm going to cover here.
‫First, I'm going to talk about why you should come up here and do these two sections before you get
‫to the link list section.
‫And then I'm going to talk about how to access the coding exercises.
‫So first let's talk about Big O and Big O is a way of measuring how efficient your code is.
‫And I'm going to give you just a quick example of where we might apply that.
‫Let's say you're writing an application and you're trying to decide should you store your data in a
‫linked list or a doubly linked list.
‫So you're looking at a singly linked list first, and the most important thing to you is being able
‫to remove the last item as efficiently as possible.
‫Is a singly linked list going to be most efficient or would it be better to use a doubly linked list
‫with this?
‫Be more efficient when you remove the last item?
‫Now it just so happens that a doubly linked list is much more efficient at this particular task.
‫And we'll get into all the reasons for that when we get into the course.
‫But the important thing here is the way we're going to talk about this efficiency is going to be the
‫language of Big O.
‫So there are three different reasons you should watch this section.
‫First, we're going to be talking about the big o of everything we do with every data structure and
‫every algorithm throughout the course.
‫And we're going to be having quizzes on it and spend a lot of time on this topic.
‫So that's the first reason you should watch this section.
‫The second reason is you can see just right here, if you're making decisions on what data structure
‫to use in your code, you need to understand this if you're going to write efficient code.
‫So that's reason number two.
‫But there is a third really big reason.
‫There's 100% chance when you go into a coding interview that they will ask you questions about big O
‫And now this next topic here, classes and pointers is very short.
‫It only has two videos in it.
‫One is an introduction to classes and the other one is on pointers.
‫So first, let's talk about classes.
‫Every data structure we create in this course will be using a class.
‫So when we write the code for a linked list, for example, we're actually creating a linked list class.
‫So it's important to know the basics of how classes work.
‫But the other video pointers, this is something that trips up a lot of students.
‫So, for example, if I ask a lot of students to show me where head and tail are in this diagram that
‫will say this is head and this is tail, and that is actually incorrect.
‫And the reason is that neither head nor tail are nodes.
‫Head and tail are both variables that are pointers that can point to a node.
‫So head is this pointer.
‫Now, it just so happens that it is pointing at this node, but head is that variable that points to
‫that node.
‫And when you have a variable that's a pointer.
‫It has some characteristics that are different than variables that are say, like an integer.
‫And it will be important to understand those differences.
‫So now let's move to the final topic in this video, and that is the coding exercises.
‫So I'm going to come up here to the Linked List section and I'm going to open this and then we're going
‫to come down here to the constructor.
‫And as I mentioned earlier, this would be the first place where we are really writing code in the course.
‫And I'm going to click on this resources tab and you can see that we have an exercise and solution file.
‫And if you click on these, these will download and then you can import those into whatever coding environment
‫that you're using.
‫So this is one way to access the coding exercises, but I do have some students that don't want.
‫To download a file and import it.
‫They just want to do it in the browser in the course.
‫And if that's the way you want to do it, just scroll all the way to the bottom.
‫And at the bottom there's a section called Coding Exercises.
‫So I'll open this and then you can see up here that same coding exercise for the link to list constructor
‫is down in this section as well.
‫So for the coding exercise, you either download the exercise from the video under the resources tab
‫or you do it down here you don't do both.
‫And the reason is these will both be the same exercise either way.
‫So if you want to get the most out of this course, as soon as we get done with a video where we're
‫going through code immediately, do the coding exercise and reinforce that learning.
‫So I took a lot of time in creating these coding exercises and they are designed to give you an opportunity
‫to write the code for each topic as quickly as possible.
‫And I think you will find these to be more efficient than writing all of the code from scratch.
‫And with that, that is our quick course overview.