Thanks for all the comments! I wanted to add a quick note here that the intention of this video is to help you get better at Data Structures and Algorithms, and not to help you prepare for coding interviews. While I did add a book with interviews in mind and discuss that perspective throughout the video, that isn't the main goal of this video. The goal here is to simply help you get a better grasp of Data Structures and Algorithms. Interviewing is a whole different ballgame, and requires specific strategies and approaches to nail. I will make a video series on the whole process of getting better at coding interviews in the near future. But before you can get better at interviewing, you have to improve your foundational knowledge of Data Structures and Algorithms -- that's what this video is for! Hope that makes sense. Cheers! :)
Mycodeschool for basic and neso academy for c basic(theory and some pre-implementaion example,use 1.5x) or nptel (look for differ IITs if any updated new courses some are too old and some are new,use 2x here).
Really? I’m really scared of algorithms, but I know need to be good at it if I want to succeed in technical interviews! I will definitely give it a try, thank you!
This is great! Next semester I start “Introduction to C++” first year of a community college working on an Associate Transfer to SDSU. I’ve been looking books like this, thank you for the video!
@@arturofonseca5846 If you don’t have any programming experience IT will be a bit difficult but don’t give up! With time, all that you have learned will connect in some way. Keep your heads up and good luck!
All solid recommendations. Grokking Algorithms was one of the best texts I read regarding the topic. I loved how Aditya broke the concepts down into simple relatable examples
Damn dude. Im about to graduate next semester and was looking for something just like this. I love the layed approach. I need to freshen up on my algo and DS for interviews. Thank you for sharing this!
@@Words-of-encouragement.-. Yes ! I graduated and I have a software engineering position. Currently working on getting some cyber security certifications. I want to do some red team.
Dudeee.....you look so happy while reading from those books 😀😀 I used Elements of Programming Interviews for my interview prep and it is an amazing resource for sure. The questions are amazing and the way they relate other possible questions which can emerge from one question.
I have seen a lot of videos on Self-coding/Software Development, but your quality of videos is unparalleled. Great Aesthetics and unbelievably high quality content !
My CS Professor was telling us last week about the Introduction to Algorithms book, and how it's the bible for this job. He was suggesting to all of us that if we intend to pursue this line of work, we should try to pick up at least an older edition of the book. Thanks for giving me some lead in books.
Number 3, CLRS, was my first go-to into the world of DS&A. I came from a heavy maths background and needed something thorough to make me understand the concepts in detail. For someone not from a CS background, I struggled at first to understand some complicated topics such as the layout of hash maps, but once you have read the chapters more than a few times with a pen and paper, drawn some pictures to make understanding the data structures more intuitive, it is actually manageable. I thank the writers of CLRS for having put together such high quality content, it has definitely helped me a lot in better understanding algos.
I just bought 3 of the books for the summer to study and help understand before the class starts. I also liked the way you you pick the books. Cause I was just going to buy a book but glad I watched this video
Interesting video. I am preparing for next semester with Robert Sedgewick's 'Algorithms 4th edition' and was curious what other people were using to study.
This video actually read my mind lol, my DS&A kicked my ass this semester and I was like "hm I need a better textbook to study over break" and when I come home I see this video lol
Hi Utsav, thank you so much for sharing your thoughts on the best books for learning data structures and algorithms. I really appreciate the way you explain how to approach reading these books-it’s incredibly helpful! I studied computer science two years ago, then switched to finance, and now I’m exploring ways to combine the two fields. As a Chinese learner, I sometimes find it challenging to read books thoroughly, so I usually jump straight to solving problems. Your method of explaining how to effectively read and learn is something I really admire. Thanks again for your effort and insights!
Liked the part that you stressed on first having a brief overview of the topics and then slowly and steadily diving deeper into specific topics. I first started learning a topic too much, which indeed helped but then it becomes discouraging if you are learning on your own, you don't get immediate results and then you started doubting yourself. Having a brief idea is enough to start solving problems and then picking up the topic as you keep on learning. This way I learned a lot and at the same time had the motivation to study. I am still a noob :) but this way my learning curve is much much better.
i have being search for a while for a video like this. I am very lucky to have found your video and chanell, i was very lost looking for how to approach DSA. My University is pretty terrible at it and teaching it, so i had to find by myself a way to find. Thank you, thank you, thank you! I think i will buy all of the books, but start from the Distilled one and end up in the interview book one. You have saved my career life :D
I bought the big one. In my mind: i studied a lot of the topics, i intuitively understand what these algorithms do, and now I am ready to get deep into them and learn how they really work. I started reading it and on the first algorithm (insertion sort) I opened my code editor and started doing it. I tried to do without copying the pseudo code, but actually doing it from reasoning. It took me several hours until I got it done (it was a naive bug of changing the variable and not the element in the list). I also had to look at some implementations in the meantime. Yeah. This is going to be a LONG ride.
Then you are probably doing it wrong way, don't waste hours on it, 8-10 minutes are enough, sometimes you need to know k things already to be able to think of next bunch of n things Think about it 😉
@EngineeringwithUtsav, I hope we get to work together on a project or some functional area in Tech. You don't make things sound effortless and that's an excellent approach. "It can be done but it takes work."
I'm a senior Java developer (I work with Java since 2013) in big projects. I've never needed any algorithm to do my work, only the basic structures and logic to do my work. I have the book "Introduction to Algorithms" and this book is almost impossible to study if you don't know well all the basics algorithms and some advanced ones. And this book doesn't have the exercises answers. I don't recomend this book. Buy it if only you gonna work with something that needs the use of advanced algorithms.
I think this book is for people doing computer science when studying algorithms for 1 or 2 semesters. So it is bundle with other required courses like numerical analysis and some fundamental knowledge on the basics of algorithms and logic. It can be an entry level, because it seems to be very comprehensive. But it will require a lot of dedication and brain cramps. I believe it is best suited if you are using it as a textbook for some class. Here on TH-cam there is the MIT course on algorithms and they follow this book. It complements it very well.
CLRS is great if you have some mathematical maturity, because it is very technical. Highly recommended for people that thinks about doing maters or PhD on computer science. One book I generally recommend over CLRS for "normal people" is "The Algorithm Design Manual" by Skiena. It i much more acessible while not being superficial; and it has many "war stories" where the author goes over the rationable step by step to solve some algorithm problems he found in real life.
Nice video, i've had Computer Science Distilled on my Wish List for about a year, but after your recommendation i'll buy it. I'm an experience Software Developer, but still struggle with Algorithm Interviews. Thanks!
Thanks man, for these recommendations..... Please make a video for Junior developers to grasp more and more concepts of Software Development, to become best in field.
I'd suggest watching my other recommendations videos, on books, projects, programming languages. It covers a lot of stuff useful for beginner software engineers.
One impoetant if not "the" most important book is missing "The art of computer programming" by Donald Knuth. This is not for begginers but man each volume describe different types of algorithms. If you are nerd or a geek this book is a must in your library.
I liked the video the books recommended are the once i used in my college i guess time to read them once again :-P, also the happiness in your face when u were saying you should know whats an int, array, variables etc hehe
They are both the same, not mutually exclusive. You learn the basic constructs of programming like variables, statements, functions, conditionals etc. Then you move on to basic data structures, then advanced data structures and while at that, you learn algorithms to manipulate to data structures. Now you have learned the core of programming. From here on, it is only a matter of learning new syntax/constraints for a new programming language, rest stays the same. Then you move on to learn engineering concepts.... I am surprised so many people think learning to program and learning about data structures and algorithms are different --> writing a for loop to print your name 10 times is also an algorithm. Now if you store that in an array instead of printing, you are using a basic data structure ... makes sense?
@@EngineeringwithUtsav Absolutely. I guess the reason ppl like myself struggle with programming is because the field is so vast, rapidly changing and abstract that it is quite difficult to catch the starting end of the thread. When i learn a new subject, I like to visualise the end result and then plan my path towards it. In real world programming applications, you have to take so many "detours" to pick up that side knowledge to be able to write a specific driver using low level language, or an abstract level algorithm using high level language that by end of my planning stage, i get demotivated and drop the whole idea. I'm finally back on track of my programming journey because of a hobby project and hopefully this time I'd be able to achieve level 1 skill at least :).. something i can then translate into a professional skill.
Just a one question, is it necessary for a data science ( machine learning) To go through that or it will be a waste of time Is there any algorithm book you recommend for machine learning
Just watching this video today and I'm so blessed by everything you said... As a software engineer with decades of experience...do you recommend knowing concepts in-depth or just having a surface/shallow knowledge as a starter in software engineering/development? Cos some say you'll learn more on jobs and there's no need to know have a deep-rooted knowledge. Would appreciate if I got an answer from you...
Depends on what field in engineering you are interested in. Graphics-heavy (like games) will have a lot of physics and hence will be a bit math heavy in the Calc side of things. ML can be heavy on the Probability and Stats side. Trading and finance can be heavy on the quant side. So, it depends. In general, you'd be okay with basic college math -- probability, stats, counting and discrete math (maybe some linear algebra).
Thanks for all the comments! I wanted to add a quick note here that the intention of this video is to help you get better at Data Structures and Algorithms, and not to help you prepare for coding interviews. While I did add a book with interviews in mind and discuss that perspective throughout the video, that isn't the main goal of this video. The goal here is to simply help you get a better grasp of Data Structures and Algorithms. Interviewing is a whole different ballgame, and requires specific strategies and approaches to nail. I will make a video series on the whole process of getting better at coding interviews in the near future. But before you can get better at interviewing, you have to improve your foundational knowledge of Data Structures and Algorithms -- that's what this video is for! Hope that makes sense. Cheers! :)
Mycodeschool for basic and neso academy for c basic(theory and some pre-implementaion example,use 1.5x) or nptel (look for differ IITs if any updated new courses some are too old and some are new,use 2x here).
could you suggest which Discrete mathematics book are better
Thanks man. Love from Mumbai
Those guitars 😍
@@aminulislamsabbir4989 +1 to any Discrete math book recommendations
Love how you actually showed and read through the books instead of blabbering out a script. What a man! ❤😃
:)
Grokking algorithm literally helped me to vanish my fear for coding.
Really? I’m really scared of algorithms, but I know need to be good at it if I want to succeed in technical interviews! I will definitely give it a try, thank you!
TH-cam algorithm can sometimes be fantastic, this is exactly what I was looking for. Thanks a lot!
It's 2 am, spent all day coding, and can't stop learning tech stuff. Is addictive 😭
👏👏👏 That’s what I’m talking about! No sleep with the wicked! 😀 Keep it up bro!
@@EngineeringwithUtsav Thanks, this kind of engagement really motivates us to work harder and get where we want to be...
Keep it up bro
Good. But do take breaks and do different things so that you don't get burnt out.👍
@@shoebilyas9664 agreed
This is great! Next semester I start “Introduction to C++” first year of a community college working on an Associate Transfer to SDSU. I’ve been looking books like this, thank you for the video!
Ha we are in the same boat. Im hammering on c++ and java language because those are coding languages UC schools focus on
Same! I am also trying to transfer to CPP! Good luck to both of you! 💪🏻
@@arturofonseca5846 If you don’t have any programming experience IT will be a bit difficult but don’t give up! With time, all that you have learned will connect in some way. Keep your heads up and good luck!
You can do it! I transferred from a California CC to Cal!
how are you my friend?
You are like a hidden gem in TH-cam. Great video style. On point and clear cut.
All solid recommendations. Grokking Algorithms was one of the best texts I read regarding the topic. I loved how Aditya broke the concepts down into simple relatable examples
I’m reading it currently. So beginner friendly.
would you recommend me this book to learn algorithms in python 3 ?
@@russellkarabelnikov539 I would. But focus on learning how they work generally, and not for a specific language
The best thing about your videos you give all the answers in a structured way.
Damn dude. Im about to graduate next semester and was looking for something just like this. I love the layed approach. I need to freshen up on my algo and DS for interviews. Thank you for sharing this!
How is it going? Have you graduated already?
@@Words-of-encouragement.-. Yes ! I graduated and I have a software engineering position. Currently working on getting some cyber security certifications. I want to do some red team.
Dudeee.....you look so happy while reading from those books 😀😀
I used Elements of Programming Interviews for my interview prep and it is an amazing resource for sure. The questions are amazing and the way they relate other possible questions which can emerge from one question.
I have seen a lot of videos on Self-coding/Software Development, but your quality of videos is unparalleled. Great Aesthetics and unbelievably high quality content !
My CS Professor was telling us last week about the Introduction to Algorithms book, and how it's the bible for this job. He was suggesting to all of us that if we intend to pursue this line of work, we should try to pick up at least an older edition of the book.
Thanks for giving me some lead in books.
I am envious of their students, the only important thing that my university has taught me was agile methodology :(
starting to fall in love with your channel, good stuff. appreciated
Awesome, thank you!
Number 3, CLRS, was my first go-to into the world of DS&A. I came from a heavy maths background and needed something thorough to make me understand the concepts in detail. For someone not from a CS background, I struggled at first to understand some complicated topics such as the layout of hash maps, but once you have read the chapters more than a few times with a pen and paper, drawn some pictures to make understanding the data structures more intuitive, it is actually manageable. I thank the writers of CLRS for having put together such high quality content, it has definitely helped me a lot in better understanding algos.
I just bought 3 of the books for the summer to study and help understand before the class starts. I also liked the way you you pick the books. Cause I was just going to buy a book but glad I watched this video
Interesting video. I am preparing for next semester with Robert Sedgewick's 'Algorithms 4th edition' and was curious what other people were using to study.
This video actually read my mind lol, my DS&A kicked my ass this semester and I was like "hm I need a better textbook to study over break" and when I come home I see this video lol
Nice readings. I want to improve my algorithm knowledge. Btw, giving that personal piece of info helps out!
Glad it was helpful!
thanks for showing inside the books and giving short explanation and leveling books. this video is amazing :)
Great!!! Finally we have the recommended book list from Utsavized on Data Structures and Algorithms. YAY!!!!!
😅
Hi Utsav, thank you so much for sharing your thoughts on the best books for learning data structures and algorithms. I really appreciate the way you explain how to approach reading these books-it’s incredibly helpful!
I studied computer science two years ago, then switched to finance, and now I’m exploring ways to combine the two fields. As a Chinese learner, I sometimes find it challenging to read books thoroughly, so I usually jump straight to solving problems. Your method of explaining how to effectively read and learn is something I really admire. Thanks again for your effort and insights!
great channel. as a 19 years old programmer i am glad i found this channel
Liked the part that you stressed on first having a brief overview of the topics and then slowly and steadily diving deeper into specific topics. I first started learning a topic too much, which indeed helped but then it becomes discouraging if you are learning on your own, you don't get immediate results and then you started doubting yourself. Having a brief idea is enough to start solving problems and then picking up the topic as you keep on learning. This way I learned a lot and at the same time had the motivation to study.
I am still a noob :) but this way my learning curve is much much better.
This is a really helpful list of resources. I appreciate your channel and efforts you are putting into educating others! Thank you!
Love your videos. It makes me calm and focused , much needed for a software developer ❤️.
i have being search for a while for a video like this. I am very lucky to have found your video and chanell, i was very lost looking for how to approach DSA. My University is pretty terrible at it and teaching it, so i had to find by myself a way to find. Thank you, thank you, thank you! I think i will buy all of the books, but start from the Distilled one and end up in the interview book one. You have saved my career life :D
Great video Utsav! Very informative! Ordered the first two books, will be a good read for the upcoming holidays . Thanks! :)
Awesome! The first two books are a fun read!
I bought the big one. In my mind: i studied a lot of the topics, i intuitively understand what these algorithms do, and now I am ready to get deep into them and learn how they really work. I started reading it and on the first algorithm (insertion sort) I opened my code editor and started doing it. I tried to do without copying the pseudo code, but actually doing it from reasoning.
It took me several hours until I got it done (it was a naive bug of changing the variable and not the element in the list). I also had to look at some implementations in the meantime.
Yeah. This is going to be a LONG ride.
Then you are probably doing it wrong way, don't waste hours on it, 8-10 minutes are enough, sometimes you need to know k things already to be able to think of next bunch of n things
Think about it 😉
highly appreciate this video brother!, it helped me to get an insight regarding what books should i go to
your approach to topics in general is very unique. I have been following your videos and I love them. Thank. you and keep up the good work. 😀
great great video. I will continue with CS destilled. I was looking to feel confident about alg & ds interviews. Thanks a lot
Apart from being a very informative video, your voice is very peaceful.
👍🏽👍🏽👍🏽👍🏽👍🏽👍🏽👍🏽👍🏽👍🏽👍🏽👍🏽👍🏽
Cool background music. Really into your channel and content. Great stuff.
Amazing Video. Provides great insights and resources in the video as well as in description. Thank You Very Much.❤❤
@EngineeringwithUtsav, I hope we get to work together on a project or some functional area in Tech. You don't make things sound effortless and that's an excellent approach. "It can be done but it takes work."
Good to know that there are more people out there writing code and playing guitar :)
🤘
Thanks sir for this video. I have a request to you . Can you make a separate video like this on DISCRETE MATHEMATICS ( for the step by step learning)
Liked this content and subscribed , this is what i am looking for
Cant thank you enough
I was searching for these type of book suggestions
those 4 books are gem, like you 🔥
I loved this video! Thank you 💙
Awesome video man👌 .Thanks for the suggestions and detailed procedure to get good at algorithms.
Thanks man.
This really helped a lot.
I'm a senior Java developer (I work with Java since 2013) in big projects. I've never needed any algorithm to do my work, only the basic structures and logic to do my work. I have the book "Introduction to Algorithms" and this book is almost impossible to study if you don't know well all the basics algorithms and some advanced ones. And this book doesn't have the exercises answers. I don't recomend this book. Buy it if only you gonna work with something that needs the use of advanced algorithms.
I think this book is for people doing computer science when studying algorithms for 1 or 2 semesters. So it is bundle with other required courses like numerical analysis and some fundamental knowledge on the basics of algorithms and logic.
It can be an entry level, because it seems to be very comprehensive. But it will require a lot of dedication and brain cramps. I believe it is best suited if you are using it as a textbook for some class.
Here on TH-cam there is the MIT course on algorithms and they follow this book. It complements it very well.
Where are the exercices answers then ?
@@nims5537 look on Google for "Introduction to Algorithms exercises answers", I think you can find them. There are some PDF files with the answers.
Another awesome video and content. Thank you very much for sharing brother, I will definitely be buying one of the books.
CLRS is great if you have some mathematical maturity, because it is very technical. Highly recommended for people that thinks about doing maters or PhD on computer science.
One book I generally recommend over CLRS for "normal people" is "The Algorithm Design Manual" by Skiena. It i much more acessible while not being superficial; and it has many "war stories" where the author goes over the rationable step by step to solve some algorithm problems he found in real life.
Nice video, i've had Computer Science Distilled on my Wish List for about a year, but after your recommendation i'll buy it. I'm an experience Software Developer, but still struggle with Algorithm Interviews. Thanks!
Thanks a lot man, you got inspired me to learn DS algo :-)
Thank you for this video, I have messaged so many times for this.
Thank you😀
No problem 😊
Please upload more videos like this one❤...So helpful
The hard cover with CLRS is ❤️
Very helpful video sir, I will watch all your videos
I totally loved the video, thank you so much
You're such a good man , thanks for the effort and info ❤️❤️❤️❤️
its been 11 years, I am still recovering from the trauma of Corman's Algorithms book, I wasn't ready for that book.
I am Buying all these books in the description!! Thank you!!
Thank you so much, this will help. I'm going to start learning dsa in a week or so.
Best of luck! You got this!
Thank you very much! Very good books review.
Really helpful video for DSA beginners , thank you!!
Now the big boy comes..xD I am levelling up for this.
Truly great man. Thanks for your video.
thanks to youtube's recommendations for your videos
I suggest people learn about Data Structures alone before Algorithms. Putting them two together is already a tough task.
that what I did with Intro to algo the mit book I went to data struc then I will got algo
Thankyou! It was really helpful 👍🏻
Your way of explaining tremendous bro..
Great Video! Fantastic content as always!!
Thank you utsav for this valuable info
Thanks man, for these recommendations.....
Please make a video for Junior developers to grasp more and more concepts of Software Development, to become best in field.
I'd suggest watching my other recommendations videos, on books, projects, programming languages. It covers a lot of stuff useful for beginner software engineers.
Love the videos by the way. 🙏 Hopefully, help me get an internship in Microsoft here in ireland 🇮🇪
Thanks! Keep at it, and you will get there! BTW I wanted to work at Microsoft Ireland, too :)
A good introductory book on algorithms is "How to Solve It by Computer" by R. G. Dromey. This is a great book for learning to think algorithmically.
One impoetant if not "the" most important book is missing "The art of computer programming" by Donald Knuth. This is not for begginers but man each volume describe different types of algorithms.
If you are nerd or a geek this book is a must in your library.
Can you reccomend a good of DSA on python
I liked the video the books recommended are the once i used in my college i guess time to read them once again :-P, also the happiness in your face when u were saying you should know whats an int, array, variables etc hehe
nice video and good content, thank you
Much Needed Video 🙏
Excellent content ! Btw, what’s the background track ?
Good explanation 👍
Damn love that Kirk Hammet ouija signature behind you.
Please Make a video for difference between learning in books and courses online as udemy, coursera .. etc and which is better
Very helpful ☺
I am learning to code on my own. Should I start with Data structure first or should I learn a language (like c++) first?
They are both the same, not mutually exclusive. You learn the basic constructs of programming like variables, statements, functions, conditionals etc. Then you move on to basic data structures, then advanced data structures and while at that, you learn algorithms to manipulate to data structures. Now you have learned the core of programming. From here on, it is only a matter of learning new syntax/constraints for a new programming language, rest stays the same. Then you move on to learn engineering concepts.... I am surprised so many people think learning to program and learning about data structures and algorithms are different --> writing a for loop to print your name 10 times is also an algorithm. Now if you store that in an array instead of printing, you are using a basic data structure ... makes sense?
@@EngineeringwithUtsav Absolutely. I guess the reason ppl like myself struggle with programming is because the field is so vast, rapidly changing and abstract that it is quite difficult to catch the starting end of the thread. When i learn a new subject, I like to visualise the end result and then plan my path towards it. In real world programming applications, you have to take so many "detours" to pick up that side knowledge to be able to write a specific driver using low level language, or an abstract level algorithm using high level language that by end of my planning stage, i get demotivated and drop the whole idea. I'm finally back on track of my programming journey because of a hobby project and hopefully this time I'd be able to achieve level 1 skill at least :).. something i can then translate into a professional skill.
Just a one question, is it necessary for a data science ( machine learning)
To go through that or it will be a waste of time
Is there any algorithm book you recommend for machine learning
Thanks for this. Keep up the great work :)
My man!
There is value here
Amazing vid man 👍🏻 Please do some more book videos
Great video, loved it! :)
Thanks! 😃
Love your video ! thanks !
Thank you very much for sharing your experiences and knowledge
Nice to see so many guitars in the background alongwith the Rockit monitors...Are you also a part time music producer ?
I wouldn't say part-time, perhaps hobbyist is a better word :)
@@EngineeringwithUtsav That is still impressive. Cheers !
Just watching this video today and I'm so blessed by everything you said...
As a software engineer with decades of experience...do you recommend knowing concepts in-depth or just having a surface/shallow knowledge as a starter in software engineering/development?
Cos some say you'll learn more on jobs and there's no need to know have a deep-rooted knowledge.
Would appreciate if I got an answer from you...
How much skills in mathematics one need to do advance programming.
Just be willing to learn.
Depends on what field in engineering you are interested in. Graphics-heavy (like games) will have a lot of physics and hence will be a bit math heavy in the Calc side of things. ML can be heavy on the Probability and Stats side. Trading and finance can be heavy on the quant side. So, it depends. In general, you'd be okay with basic college math -- probability, stats, counting and discrete math (maybe some linear algebra).
@@EngineeringwithUtsav thank god not trigonometry 😭
I think imagination is more important than mathematics. Yes lil mathematics is needed.
Love your videos a lot
Great video!
Bro, please recommend some language specific books like python, Java, dot net, Javascript and its framework.
For all languages? Dang.
Just Java and Python
@@samiullahshah7264 there is a repository on github call free-python-books. You can find a lot of good stuff in there (Btw is all legal xD)
Hi Utsav, can you make a video on how to read the clrs and analyse those proofs and mathematical theory?
PlzZzz tell me the best book for beginner in data structure with java for engineering purposes? Plus in easy language!! 🙏🏻
Great video. Could you do this for Object Oriented Analysis and Design? (OOAD) Thanks!
Thanks for the video
you made my day, thank you sooooooo much
You're welcome!! Glad it was useful!
This is great. Thanks!