Join Joe Marini for an in-depth discussion in this video What you should know, part of Programming Foundations: Algorithms.
- [Instructor] Before we get started, there are some concepts you should already be familiar with in order to get the most out of this course. First, you should already be familiar with the basic concepts of programming. This includes writing functions, declaring and using variables, and other basic tasks involved with writing code. If you need to brush up on these skills, check out the Programming Foundations: Fundamentals course. Next, you should be familiar with using a text editor to write code in. It doesn't matter which editor you want to use for this course, but I'm going to be using Visual Studio Code.
It's a free editor available from Microsoft that runs on Mac, Windows, and Linux, and it has a great collection of extensions that make it a powerful tool for coding. You can download it from code.visualstudio.com. And finally, I'm going to be using the Python language in this course to work through our examples. Now, none of the algorithms that we're going to learn about are specific to Python. But it's a very popular language, it's easy to set up on a variety of operating systems, and it's even easier to learn. If you're already familiar with programming in a different language, then you probably won't have any difficulties following along, but I recommend you check out either the Learning Python or the Python Essential Training courses if you need to brush up on our Python knowledge.
I'm going to assume that you have Python installed on your computer. If you don't have Python already installed, you can check out the Learning Python course, or the Python Essential Training course, to see how to get it set up for your operating system. Once you feel comfortable with these concepts, you're ready to proceed with the rest of the course.
- Measuring algorithm performance
- Working with data structures such as arrays, stacks, and queues
- Looping and recursion
- Sorting data
- Searching data
- Filtering and value counting with hash tables