okay so if you'd like to work for this guy this guy this guy or this guy sorry this guy then you have to know what data structures and algorithms are now a couple years ago I didn't even know what a data structure was so I started at Ground Zero and over the last few years I taught myself data structur and algorithms basically to be able to do Leal problems I don't have a computer science degree I learn it all online mostly for free and this video is basically a brain dump of everything I've learned a road map for you things which have helped things which kind of hindered me with a view of helping you guys learn data structures and algorithms and if you're new here I'm Andrew I got into Teek in my 30s um but I became a software engineer and currently travel the world to digital nor my doing it and make Tech content digital Norine content and some dad joke if that's some your kind of vibe subscribe and the next video will be focused also on leak code so I'm going to break down datp algorithms in this video the next one will be leak code so how I went from not being able to do eases in leak code to be able to do hards and mediums so subscribe if that sounds your kind of vibe okay let's get into it the good news is that data struct and algorithms look super intimidating from the outside but once you get into them and you learn the basics and you take it step by step it's not actually that bad and all you need is consistency persistence and there a idea that rather than practice makes perfect practice makes good the reason I learned them I was going through the interview process with some jobs I just got my first developer job and I felt I'd be putting a ceiling on my my development on what kind of jobs I could get if I didn't learn data stru and algorithms so I started learning them and if you just take it step by step with this approach I'm going to give you you'll get there a good mindset shift to start with is that is actually quite fun obviously going through an interview process sucks the life out of it but if you look at it as this beautiful thing where you're solving puzzles and you just treat it in a light way you will have a lot more fun and you'll learn it a lot quicker okay and before we get into it some housekeeping so the maths a lot of people really get put off in coding because of maths or programming or whatever the math is not an excuse to not study this or to feel you will never be good at it the only math I've really had to learn was logarithms it's very basic math and you don't actually use a lot of math in data sech algorithms is my experience obviously someone else might tell you different but if you're not so good at math that's not an excuse number two a really good question is what language should you be using I think the best advice is whatever language you're good at so you want to make it as easy as possible for you to do this and you can go to an interview and you can say to them can I do this in python or can I do this in JavaScript most of the resources are geared towards python uh Java or JavaScript so just choose whatever language is your best that and if you go to an interview you can just say to them all right can I do this in JavaScript okay so day one you don't know anything about data structures and algorithms and you're like where should I start the best way to start is to get a high level overview high level concept of all the different topics of data structure and algorithms so what is a data structure really basically what are these different algorithms what are the most common data structures and things like Big O notation recursion pointers these high level Concepts that you're going to need to know and for this it's a really good YouTube video uh with free Camp which I'll link down there's also a few other data structures videos you can watch bro cod's really good um but you're not going too deep at this point you're just learning at a high level these key Concepts but one particular topic you want to get good at and you want to nail down straight away is Big O so you want to be able to look at a line of code and be able to calculate the time and space complexity and Big O is the way I always think about it is how code slows as data grows just remember that and it's a label to rank how performant your code is and you want to look at this chart and know what's going on so it's really crucial to get big old old down just watch as many tutorials as many videos as you can so you can label each line of code with its time and space complexity at this point I recommend a book there is this book but this is probably a bit too intense right now the book I recommend is this one I love this book because it's the most entrylevel beginner gentle introduction to data instruction algorithms it just explains things like Big O so simply with diagrams pictures and it's the best explanation of binary search I've found so if you're still struggling read this book now at this point I recommend you do a course and there's three I recommend there's cs50 there's one from Colt Steel on udemy and there's a zero to Mastery one so I've done all three and I the one I recommend most would probably be the zero to Mastery one and the reason I recommend a course is that will just give you a road map and a structure so they'll start with the basic concepts they'll introduce dat struction algorithms and then you'll do the more basic data structures like arrays and Link lists to the more advanced data structures and then you do algorithms so you have a road map it will keep you on track rather than doting around okay next you do one of these courses are recommended and now it's time to get your hands dirty and you do this in two ways number one with data structures you want to start writing data structures out from scratch building them from scratch okay and lean into the idea of memorizing them so a lot of people say you shouldn't memorize stuff in code in for data search and algorithms though I think you should like for example with me I struggled with pointers with link lists but in the end I just wrote so many link lists that it just was like second nature and if you get into an interview and something you memorize something it's like second nature you're just going to have such an easier time as opposed to someone who's kind of like doing it on the fly so build these data structures from scratch and memorize as much as you can so yeah don't be afraid of memorizing things apart from Big O so you should be able to calculate Big O yourself without memorizing anything okay next it's time to start doing leak code and if you get on leak code you look at some of these easy problems and you're like holy I can't even do eases then my advice and what I did is to go on a website called code Wars it's basically like a beginner entry level lead code and do loads of these problems it's like code Wars is like a catar system and just start right at the bottom put your ego away and just do as many of these problems as you can because these problems are training the logical part of your brain the problem solving part of your brain and if you do as many of them as you can your practice makes good remember that do as many as you can you will get there and try and keep it fun and keep it light look at them as like crosswords and puzzles yeah you're not saving the world okay it's just coding at the end of the day so start each session with every coding session you sit down maybe you're building a project try and start it with a cold Wars problem or a leco problem and start at eases gradually build your way up the next video I do will be on Le code so subscribe for that and also use chat gbt so give it problems ask it how it can make it more performant chat gbt or Claude whatever is your friend at this point okay so at this point you probably at an intermediate level you've done the courses recommended and you're looking for a bit more knowledge or to like recap or to solve more problems a book like this is really good uh I think the reason I didn't recommend this at the store is it can be a bit dry there's another one called algorithms which is really good so there's this and algorithms I'd recommend and there's loads of problems in here this is basically everything you need but can be quite dry if you're just starting out there's resources like Abdul Barry on YouTube is really good his algorithms playlist Rob Edwards is really good on YouTube and bro code so those three should be enough for you and one thing to remember here is that you don't need to know everything and I'll talk about this in the leak code video I do next but be efficient and effective with your time so use things like the blind 75 and for example with sorting algorithms there's like a billion of them all right you don't need to learn every one just pick one or two get really good at those like Mera and so when you're an interview and you need to sort something that you're bang on also Shameless plug I do have an ebook it's called how to not sck data struction algorithms and leak code I made it about half a year ago and it's basically a huge brain dump of everything I know about these two how to solve Le Cod problems basically and learn data instuction algorithms so yeah took me about 10 days to write put a lot of effort into it a lot of people have bought it so yeah that sounds interesting if you like this video check that out Link in the description below and that is it and just a close it off what I would say is just try and keep this process of learning this really complex topic you'll only have to learn it once and then once you learn it you've got the skill for life and you can earn a lot more money in your career it's a very high value skill at the moment thearch algorithm so always remember that and just try and make it fun celebrate the small wins like I still remember solving my first leadco problem and like reverse in a link list all these like Milestones I still remember so yeah celebrate the small wins keep it fun the next video will be f focused on leak code so subscribe for that it massively helped me out if you got value from this content Please Subscribe and I'll see you in the next one CIA