If there are 200 pages in a dictionary and we need to find a word, the computer can do two things: First, it can find the word by starting from page 1 and looking through each page in order. Second, it can get the middle page and compare the word you are looking for to the word on that page. If the word you are looking for is on the same page, the computer can stop searching. Otherwise, it can see if the word is on left side or right side of the book, if the computer finds the word on one side then it will forget abouth the another side of the book and repeat the same steps until it finds the word, or determines that the word is not in the dictionary. There are advantages and disadvantages to both methods. If the word you are looking for is on page 1, the second method will take longer than the first method. However, if the word you are looking for is on the last page(consider), the second method will be faster. A computer scientist will decide which method to use based on the specific situation, such as the size of the dictionary, the hardware and software being used, and the specific needs of the user.
Your example assumes the words are sorted. If it is a novel, the search would have to start from page 1. Search by the middle page is not going to work
Understanding how to create and optimize algorithms is the heart of coding (or software engineering as it’s called these days.) The rest is just learning the idiosyncrasies (syntax, memory management, etc.) of a particular language.
I would highly suggest recommending the book 'A Common Sense Guide to Data Structures and Algorithms' by Jay Wengrow. It's language agnostic, and similarly explains how many algorithms like binary search work in plain language much like in this video. It was my "ah ha!" moment that no other video or book could explain clearly enough.
Bro... your explanations are ON POINT. I've been binge watching some of your videos as I'm looking to get into programming as a hobby and man, I constantly sit here going "aaaaaaaaaaah that makes sense!". Love your work and especially the way in which you easily get difficult ideas across.
Just wanted to drop a comment and commend you on this video and the data structures one! It isn't easy for me to sit down and give full focus to tutorial/explanation videos such as this. But through your enthusiasm and editing style I was completely focused and also entertained. Well done man.
@@IDeadDanI good 👍 don't use it, same with TH-cam Shorts. Do you treat your ADHD? Because I think I may have undiagnosed ADD and I don't know where to start and do something about it
@@theseangle I got diagnosed as an adult aswell as I had suspicions about it same as you. I did it privately through a psychologist locally who has a great reputation and has a particular interest in adult ADD/ADHD and Autism diagnosis. I'm currently treating it with Concerta as per my prescription from my family physician.
@@IDeadDanI thanks for the info! I also should probably find a doctor like this. May I ask about your experience with those medications? What have you noticed after starting to take them?
Started studying comp science on my own. Learning a new skill that seems like will always be in high demand. Dig the vids. Love a good tutorial. Thx for the knowledge!!
The way you explain is really easy to understand, thanks for that! It would be great if you can talk in another video of the Cracking the code interview or also get deeper practical real cases of the Big O notation
Hey man, thanks for this video. It helped me overcome burnout from University's programming assessments. Fuck my profs but I would like you to create more videos on teaching stuff in the Beginners to Your level range. You're a professional at teaching, I'm impressed. Keep it up bro. Enjoy living life as a software engineer. Again, thanks for this video.
How to get deeper into a programming language? How to practically learn things like collecting the data and handling the data? How should my approach be while solving a problem? (Like, should i give attention to every single letter, its type, if it is a digit, if it is an integer or float, if its positive or negative or zero, if you do that then this happens, if you do that then that happens...etc)
Above anything else I think it is great that you inform about what computer algorithms are for so that beginning scientists have access to the information. 👍
OMG- I get my answers which are I can't find from my teacher. the question how we get what we want from code to do. the way you explain algorithms amazing. and it's just 2:10 sec and I'm really satisfied. keep it up this amazing work. can't wait to seee more from you. and also I'm write down every single thing in my notes to remind myself what code is what process is.
@@MrGinz4uuu Not yet. Have you? I've set aside time to use CS50 as a base while going deeper into some subjects, as well as programming. Thanx for holding me accountable. . I was planning to slack today. All the best.
@@MrGinz4uuu Path of confusion, I think it's called 😂. I started w the very basics of js and html, now I'm trying to grasp C, but I want to start making simple games for fun while learning the other stuff. I made the mistake of trying to learn everything at the same time and started to freak out, thinking I can never do it. How is it going for you? Have you set a specific goal?
@@dianathomas2674 i did the same in start do this do that.. now trying to focus on js..but sometimes i feel the burn out… Do u study in cs or just learning on ur own like me.. and why not learn c# instead of c… as it has more advantages
I was a little confused about this, but this easy to understand, short, concise, “nlog(n)” explanation made me understand everything I was confused about and structured it like an optimal data structure so I can learns easier. Hehehe. The question I had was when writing an algorithm do you think it’s best to start with the solution in the first check(I’ve seen ChatGPT do this) or at the end of the elif statements? Thanks! ☺️
If you are a game programmer I can recommend Algorithm Design by Robert Tamassia and Michael T Goodrich. I found the book for relatively cheap in a local shop, but although it is a dry and technical read it is full of useful information on graphs, traversals, data structures, and has plenty of diagrams to make things clear. Good stuff if you are trying to do some procedural generation or optimization. It is very old, I recommend because it is affordable and packed with info for the price. (I got it for what is equivalent to 10 usd)
I remember in one of the CS50 courses instructor said the time it takes to turn on a lamp or dropping a ball to the ground a computer than take over a billion decision that's how fast things are.
I do not get non programmer types that are techs that do not get them. I mean they use a flow chart. They already use algorithms to do their jobs. Most folks have used them non formally if not formally at least once, or even made one without perhaps knowing they have.
@BeFearlessxx Ya, but a flow chart is a type of visual algorithm. Everyone that fixes anything in the military, all doctors and medical folks use them.
Ty for the videos!! Love this channel..... For understanding algorithms and datastructures, your last video recommended algomonster, would you say algomonster or algoexpert is better?
Hi i am working in MERN stack from past 1 year. My next NEW project starts from next week and its frontend is NEXT JS and backend is NEST JS. What should be my approch to learn these stacks according to u?
Thanks so much for the very helpful explanation and information that you shared. Yes, we need more explanation and examples about Algorithms and Data Structures 😊
Would it be posible to create a socialmedia algoritms that promots or improve/incress? (self estem, creativity, curiosity, humbelness and other mental health propeties) if so why not create it with a founding from global human health. and miht it not be realy posible when we have neroulink so a computer could sens your welbeing
How about based on the size of the book and the page we're looking for (say page 100), randomly opening the book at approximate page 100 (for example). From there, we can then look and ask, is this page 100? Perhaps we randomly opened the book on page 102, we only missed the correct page by 2 pages. Then only have to go backward 2 pages. That's funny, as soon as I typed this comment, as your video was running, that's exactly what you did.
@@ritasjourney not always, complexity cars about best, average, and worst case scenarios. Some algorithms have degenerate worst case inputs which are drastically slower than the average case. For example, it's possible to craft specific inputs to regex matches which take orders of magnitude more time to search. Like, long enough to potentially craft denial of service attacks with minimal effort, if you know the specifics regex being used on your input.
i really like your videos. I was living in London and left cuz wanted to pursue a life doing coding and becoming software engineer. I love the content and i aspire to be like you. I thought about film making but as you said probaly takes a long time. I would like to know how you starting in film making and maybe did a video into it. Anyways thanks for your context.
thanks for the informative video bro! just out of curiosity man would you ever try to work for a FAANG company? seems like you got all of the tools honestly but I know that FAANG isnt really for everybody.
I've been introduced to coding for two years now, but I've never completed any course to be even ranked beginner. I grasp the overall context of programming, but I struggle with sitting through learning syntax. Your channel is a really great inspiration. Thanks Thomas. Glad to see you've upgraded your iPhone by the way 😏
Stop taking courses and just make something with a language. Start simple and think of some way to make it do something else and just start writing. Don't know how to make it start? Start writing then Google how as you go. I'm a professional software engineer, didn't study compsci and took no classes. Just started building and the googling took me there. Classes are only useful when you know what you're doing.
I found you 3 days ago and have watched half your videos. I’ve got the notion comp sci course I’m about to start- huge thanks by the way. Can I get advice on something? I have no programming or coding experience. I’m an entrepreneur/ creative and recognized a niche so I want to build the software like an Asana/ notion/ Todoist with a simplified UI. What I don’t know how to do is create the visual element I want, and then have that clickable prototype able to hop into the next wireframes for the most basic form of an MVP. So my question is what other topics would you advise I learn beyond your programming course? I may end up hiring someone and outsource the MVP dev but I need to at least get a base level understanding of computer science for the future. You’ve undoubtedly had the best videos in regards to teaching a lot in an easy to understand way visually and conceptually across multiple topics.
This is very interesting - I would suggest learning specifically front-end web development, that will help you to code up the visual UI of the project. So HTML/CSS/Javasctipt to start and then a framework like React could be good for this. Good luck, would love to see what you end up coming up with!
Hey man, you could create a Discord channel for us, your followers, interact with each other! And I didn't know Python was kinda strong in Backend, I usually see opportunities with Java
Check out Algorithms to Live By and receive an additional 20% discount on the annual subscription at shortform.com/internetmade
brain left the chat and enter the chat
I love you bro. No homo.
Thanks for sharing.
❤
If there are 200 pages in a dictionary and we need to find a word, the computer can do two things:
First, it can find the word by starting from page 1 and looking through each page in order. Second, it can get the middle page and compare the word you are looking for to the word on that page. If the word you are looking for is on the same page, the computer can stop searching. Otherwise, it can see if the word is on left side or right side of the book, if the computer finds the word on one side then it will forget abouth the another side of the book and repeat the same steps until it finds the word, or determines that the word is not in the dictionary.
There are advantages and disadvantages to both methods.
If the word you are looking for is on page 1, the second method will take longer than the first method. However, if the word you are looking for is on the last page(consider), the second method will be faster.
A computer scientist will decide which method to use based on the specific situation, such as the size of the dictionary, the hardware and software being used, and the specific needs of the user.
Your example assumes the words are sorted. If it is a novel, the search would have to start from page 1. Search by the middle page is not going to work
As a non-programmer who works in the tech industry, you just significantly demystified the concept of algorithms for me. Thank you, and well done.
So great to hear that my ramblings made sense haha!
I also recommend freecodecamp
Understanding how to create and optimize algorithms is the heart of coding (or software engineering as it’s called these days.) The rest is just learning the idiosyncrasies (syntax, memory management, etc.) of a particular language.
Thank you for this comment. As my second day of learning. Im going to SC and use this comment as my foundation ❤
@Active Exploration literally ❤
You explained this in the most amazing way. Thank you. I'm starting on this, there's no turning back now.
Glad to hear that what I said made some sense haha!!
David Malen used the same amazing way to explain algorithms: CS50 2021 in HDR - Lecture 0 - Scratch - th-cam.com/video/1tnj3UCkuxU/w-d-xo.html
how did it go?
I would highly suggest recommending the book 'A Common Sense Guide to Data Structures and Algorithms' by Jay Wengrow. It's language agnostic, and similarly explains how many algorithms like binary search work in plain language much like in this video. It was my "ah ha!" moment that no other video or book could explain clearly enough.
Nice!
Thanks for the book recommendation! I started reading it, and I’m really enjoying it. You were absolutely right about the “ah ha” moment.
I'm reading this book and I'm like
'ah ha'..
@@msulwa would you like to start a book club discussing the book weekly or bi weekly
@CoherentPanda what else do you recommend?
Bro... your explanations are ON POINT. I've been binge watching some of your videos as I'm looking to get into programming as a hobby and man, I constantly sit here going "aaaaaaaaaaah that makes sense!". Love your work and especially the way in which you easily get difficult ideas across.
Just wanted to drop a comment and commend you on this video and the data structures one! It isn't easy for me to sit down and give full focus to tutorial/explanation videos such as this. But through your enthusiasm and editing style I was completely focused and also entertained. Well done man.
Do you have ADD/ADHD or just TikTok induced severely low attention span levels?
@@theseangle I have ADHD, never been on TikTok before
@@IDeadDanI good 👍 don't use it, same with TH-cam Shorts. Do you treat your ADHD? Because I think I may have undiagnosed ADD and I don't know where to start and do something about it
@@theseangle I got diagnosed as an adult aswell as I had suspicions about it same as you. I did it privately through a psychologist locally who has a great reputation and has a particular interest in adult ADD/ADHD and Autism diagnosis. I'm currently treating it with Concerta as per my prescription from my family physician.
@@IDeadDanI thanks for the info! I also should probably find a doctor like this. May I ask about your experience with those medications? What have you noticed after starting to take them?
Started studying comp science on my own. Learning a new skill that seems like will always be in high demand. Dig the vids. Love a good tutorial. Thx for the knowledge!!
The way you explain is really easy to understand, thanks for that! It would be great if you can talk in another video of the Cracking the code interview or also get deeper practical real cases of the Big O notation
Hey man, thanks for this video. It helped me overcome burnout from University's programming assessments.
Fuck my profs but I would like you to create more videos on teaching stuff in the Beginners to Your level range.
You're a professional at teaching, I'm impressed. Keep it up bro. Enjoy living life as a software engineer.
Again, thanks for this video.
I wish I met your video sooner. Never really knew how to approach learning Data Structures and Algorithms but now I do. Thank you.
Fantastic high level explanation. Outside of the hardware, algorithms and also interfaces/protocols are the crux of all computing
How to get deeper into a programming language?
How to practically learn things like collecting the data and handling the data?
How should my approach be while solving a problem? (Like, should i give attention to every single letter, its type, if it is a digit, if it is an integer or float, if its positive or negative or zero, if you do that then this happens, if you do that then that happens...etc)
The way of explanation you use is really very unique and incredible.
this is one of the best beginner algorithm explanation video out here, well done 🔥
Above anything else I think it is great that you inform about what computer algorithms are for so that beginning scientists have access to the information. 👍
The book page search is a clever way to explain algorithm... Very clever
Beautiful explanation! And yes lecture 3 from CS50 it's fantastic😃
I'm really Impressed by your ability to explain these concepts so concisely, Thank you very much🙌🙌🙌🙌🙌🙌👍👍👍👍
Glad it was helpful!
OMG- I get my answers which are I can't find from my teacher. the question how we get what we want from code to do. the way you explain algorithms amazing. and it's just 2:10 sec and I'm really satisfied. keep it up this amazing work. can't wait to seee more from you. and also I'm write down every single thing in my notes to remind myself what code is what process is.
AMAZING!
Very clear and concise.
Now back to CS50. Thank you so much!
DID u finish it
@@MrGinz4uuu Not yet. Have you? I've set aside time to use CS50 as a base while going deeper into some subjects, as well as programming. Thanx for holding me accountable. . I was planning to slack today. All the best.
@@dianathomas2674 same here mate.. im learning some js atm… what path u on?
@@MrGinz4uuu Path of confusion, I think it's called 😂. I started w the very basics of js and html, now I'm trying to grasp C, but I want to start making simple games for fun while learning the other stuff. I made the mistake of trying to learn everything at the same time and started to freak out, thinking I can never do it.
How is it going for you? Have you set a specific goal?
@@dianathomas2674 i did the same in start do this do that.. now trying to focus on js..but sometimes i feel the burn out…
Do u study in cs or just learning on ur own like me.. and why not learn c# instead of c… as it has more advantages
I was a little confused about this, but this easy to understand, short, concise, “nlog(n)” explanation made me understand everything I was confused about and structured it like an optimal data structure so I can learns easier. Hehehe.
The question I had was when writing an algorithm do you think it’s best to start with the solution in the first check(I’ve seen ChatGPT do this) or at the end of the elif statements?
Thanks! ☺️
Look at Log N notations as how many times we can divide input size by half. It somehow dies not give proper understanding but feels more intuitive
Great stuff Tomas as always!!! When are you launching your DATA STRUCTURES & ALGORITHMS course?
Wow jus saw this video and got confidence , algorithm’s can be easy .
If you are a game programmer I can recommend Algorithm Design by Robert Tamassia and Michael T Goodrich. I found the book for relatively cheap in a local shop, but although it is a dry and technical read it is full of useful information on graphs, traversals, data structures, and has plenty of diagrams to make things clear. Good stuff if you are trying to do some procedural generation or optimization. It is very old, I recommend because it is affordable and packed with info for the price. (I got it for what is equivalent to 10 usd)
I remember in one of the CS50 courses instructor said the time it takes to turn on a lamp or dropping a ball to the ground a computer than take over a billion decision that's how fast things are.
David Mallan would be so proud 👏👏👏
Good job! 👍
Thanks for be so good explaining this topic, im starting my first quarter of my university and this video help me so much:)
Loved the Data Structures Video. Can't wait to see this one :)
🔥
Thanks for putting this together so well!
Now this is more important to me
I want more videos about dsa
more coming!
Plz make full playlist on TH-cam about data structures and algorithms from easy to hard level
This is the plan!
as a programmer with 20 years of VB to C# experience, i really enjoyed this
This video really helped me see things more clearly!
awesomely easy to understand thank you!
I do not get non programmer types that are techs that do not get them. I mean they use a flow chart. They already use algorithms to do their jobs. Most folks have used them non formally if not formally at least once, or even made one without perhaps knowing they have.
@BeFearlessxx Ya, but a flow chart is a type of visual algorithm. Everyone that fixes anything in the military, all doctors and medical folks use them.
Do we need to consider to some of algorithms. Because we have now kubernates so the memory is not that important or ?
Ty for the videos!! Love this channel..... For understanding algorithms and datastructures, your last video recommended algomonster, would you say algomonster or algoexpert is better?
I Agree with this, when on college, algorithm class to rush.
Awesome Mentor ❤
Hi i am working in MERN stack from past 1 year. My next NEW project starts from next week and its frontend is NEXT JS and backend is NEST JS.
What should be my approch to learn these stacks according to u?
explained sooooo well )) thanks amazing!
Lecture 0 cs50 harvard edx :)
Thanks a lot for your videos.
Thank you for this. Nice and articulate and understandable! You're a good teacher.
Hey would you recommend I take the MIT introduction to python or the cs50 introduction to python once I’m finished with cs50x?
This is like watch Cs50 from Harvard... same exemple indeed. Great video! Exelent to get ppl excited about algorithms :)
Thanks so much for the very helpful explanation and information that you shared. Yes, we need more explanation and examples about Algorithms and Data Structures 😊
Glad it was helpful!
This is great. Please do more. Subscribed.
My first video. I really enjoyed it. Im thinking of learning to code. Where would u recommend i start
Wow, you made this topic intro so easy to understand. I appreciate your effort and the good work you put in to make such quality works
so nice i want to learn more about this algorithm
Would it be posible to create a socialmedia algoritms that promots or improve/incress? (self estem, creativity, curiosity, humbelness and other mental health propeties) if so why not create it with a founding from global human health. and miht it not be realy posible when we have neroulink so a computer could sens your welbeing
Great way to explain why algorithms are important and how they function!
Your explanation is good.. Thank you.
thanks for explaning good explnation. i understood really well
I wonder if one needs to go over the high school or university level math to learn algorithms?
Make some movies where you tackle algorithm problems with steps
I found this video over informed .I could not capture all thr information. I would need to watch it 5 more times to grasp all the info.
Very nicely done, thank you - more please 🙏
Beautiful explanation. Thanks a lot
How about based on the size of the book and the page we're looking for (say page 100), randomly opening the book at approximate page 100 (for example). From there, we can then look and ask, is this page 100? Perhaps we randomly opened the book on page 102, we only missed the correct page by 2 pages. Then only have to go backward 2 pages. That's funny, as soon as I typed this comment, as your video was running, that's exactly what you did.
We assume worse case scenario tho
@@ritasjourney not always, complexity cars about best, average, and worst case scenarios. Some algorithms have degenerate worst case inputs which are drastically slower than the average case. For example, it's possible to craft specific inputs to regex matches which take orders of magnitude more time to search. Like, long enough to potentially craft denial of service attacks with minimal effort, if you know the specifics regex being used on your input.
Bro i like your videos.Nicely done👍
I don't understand this, what do i need to learn or what are the prerequisites to learn algorithms?
Hey I am looking at your computer science degree notion template, is there a certain order you recommend i follow it with?
I've listed potential orders at the top of the template. But there is no strict order, besides perhaps within each category
Thank you for everything
I love recommendation tech because of that I found your video and you made my day special
Thank you X infinity
Yes, I loved the explanation ❤
amazing video! could you make a video on tower of hanoi next?
Thank you. I learned something.
i really like your videos. I was living in London and left cuz wanted to pursue a life doing coding and becoming software engineer. I love the content and i aspire to be like you. I thought about film making but as you said probaly takes a long time. I would like to know how you starting in film making and maybe did a video into it. Anyways thanks for your context.
Better explained than most books
Algorithms are the most important
Wow Great Job Man
thanks for the informative video bro! just out of curiosity man would you ever try to work for a FAANG company? seems like you got all of the tools honestly but I know that FAANG isnt really for everybody.
Yeah indeed I would, I will apply to them in 1-2 years probably.
You really should do a data structure and algorithms course yourself.
This is great and all but like.. what keyboard is that?
Thanks for this very informative video!
Yes more algorithms video.
Book Recommendation: "A Primer to the 42 Most commonly used Machine Learning Algorithms (With Code Samples)."
Film a realistic Job interview. We want to see you solve interview questions in real time. Thank you. Watching from Canada
Fine and clear thanks
i need more consultations please
great explanation!
best Algorithm book for beginner here..
Man introducing these books like its his first time seeing them. Damn bro did you break into a stranger's house?
Haha
Is there any course available for artificial intelligence and machine learning like ossu computer science for free for 2yrs???
would love to learn data structures from you
So many ads….. I stop at 13:56. Came here to get motivated to continue
An algorithm is a set of steps to solve a problem with math, logic and computational direction.
Thank you for the video 🙂
Thank you you are so awesome well put
I've been introduced to coding for two years now, but I've never completed any course to be even ranked beginner. I grasp the overall context of programming, but I struggle with sitting through learning syntax.
Your channel is a really great inspiration. Thanks Thomas.
Glad to see you've upgraded your iPhone by the way 😏
Stop taking courses and just make something with a language. Start simple and think of some way to make it do something else and just start writing. Don't know how to make it start? Start writing then Google how as you go. I'm a professional software engineer, didn't study compsci and took no classes. Just started building and the googling took me there. Classes are only useful when you know what you're doing.
@@liftingisfun2350 Thanks for this man
Great video. Which keyboard do you use?
Keychron Q3
@@InternetMadeCoder thank you so much, I really appreciate it
Thank you for this
I found you 3 days ago and have watched half your videos. I’ve got the notion comp sci course I’m about to start- huge thanks by the way. Can I get advice on something? I have no programming or coding experience. I’m an entrepreneur/ creative and recognized a niche so I want to build the software like an Asana/ notion/ Todoist with a simplified UI. What I don’t know how to do is create the visual element I want, and then have that clickable prototype able to hop into the next wireframes for the most basic form of an MVP. So my question is what other topics would you advise I learn beyond your programming course?
I may end up hiring someone and outsource the MVP dev but I need to at least get a base level understanding of computer science for the future. You’ve undoubtedly had the best videos in regards to teaching a lot in an easy to understand way visually and conceptually across multiple topics.
This is very interesting - I would suggest learning specifically front-end web development, that will help you to code up the visual UI of the project. So HTML/CSS/Javasctipt to start and then a framework like React could be good for this.
Good luck, would love to see what you end up coming up with!
Sc 50 course course 8. Into to html css and javascript
Would like to see algorithm and data structure implemented in real life
VIDEO ON DATA BASE MANAGEMENT SYSTEM
Great video :D
Hey man, you could create a Discord channel for us, your followers, interact with each other! And I didn't know Python was kinda strong in Backend, I usually see opportunities with Java
Java is still stronger I think, especially for enterprise applications - and good idea on the discord channel! I will probably do that soon!
just in case you'll replace that keyboard, i would be very-very happy to have your old one =)