There are so many things wrong with this 'explanation' I'm not surprised that a half wit like you is impressed by this video. You defininetly have no idea what he is saying here. And he is talking utter nonsense.
Now this is a real education , so well described, you got the real tallent sir, really appreciating. You teaching approach can make anyone from zero to hero
"indices are calculated from the data" thats literally all I needed to understand hash tables but surpirsingly I've never heard it once when people have mentioned them. Of course the bit on how to handle collisions was useful as well
Exactly - that is the essence of a hash table - it's that simple. A basic understanding of how physical RAM works explains why one memory location can can be accessed just as quickly as any other. :)KD
For me that part was intuitive, but I didn't understand how you would deal with that process creating multiple entries in the same index. This video was a big aha moment.
That is exactly what i thought. Exactly that one piece of information that i was missing. I have no idea why that was never made clear anywhere else i looked.
CS 260 student here and Chat GPT recommended this video. I can see why, this was so helpful as someone who literally has never coded a hash table into a project yet this video is exciting to see how I can store data and access it. Now I cant wait to start coding this into a project!
The video is very, very, very well made. That's a great deal of information in just under 14 minutes, and it is very clearly presented. You've more than earned a new subscriber.
Some Profs can, of course, explain what is hash table, but you just do that in about 10 mins!!! Your explanation is so clear and easy to understand, I think that is what students are looking for! Thank you Sir!
This explenation is amazing. Thanks. YT is full of confusional and long but partial explanations, but finally I found your video, which is presenting how deep is the rabbit hole in any direction in a concise and clear way.
I don't normally comment on videos but this was the most helpful explanation of what a hash table is and how to use one. I have been looking for good articles and videos for a couple of hours before I found this video! So thank you!
Your explanation of collisions and their solutions (5:06) is the most comprehensive I've come across while brushing up on my fundamentals during my job search. I'm elated I stumbled across your video. Thank you so much for this.
Fantastic tutorial. Just perfect pace, perfect intonation, perfect graphics and perfect depth to explain the topic to non-educated programmers like me. Subscribed!
i have been searching on youtube for almost an hour but couldnt find an appropriate video of explanation of hash table until i find this video .....beautifull explanation
I just stumbled upon your video and I must say, you did an amazing job! Your clear and concise explanation helped me understand the concept better than any textbook or lecture ever could. Your use of examples and visual aids made the topic so much easier to grasp.
I was about to give up on understanding Hash Tables and then finally i find this video that makes it so damn clear and comprehensible. I don't know why, but that one piece of information that tells us, that the position in the array is CALCULATED using the content of the key is never mentioned anywhere, while to me that was the most important piece of the puzzle. Thanks a lot!
You are most welcome. Another part to the puzzle is realizing that a single memory address is actually a row reference and a column reference. Hence one memory location can be accessed just as quickly as any other. You might light my series about DRAM. :)KD
I just found this. As a professional with 30 year experience with data analysis you are spot on, well explained. I subscribed and set notifications on, hope to see plenty more from you.
Best explanation I have heard yet to explain hash tables, bravo. To me when I think of what is an elegant solution to a complicated problem, it doesn't get much better than this kind of thing.
I was getting tired after watching a bunch of videos on this subject and at the beginning of this one I was about to close it because I thought it's not gonna be engaging enough. I'm so glad I didn't, this was so interesting to watch and you explain it so simple and well. Thank you very much sir!!!
This video is a small miracle in the way it so concisely and clearly explains the concept. If the same technique was applied to all college-level computer science concepts, you'd finish your CS degree in 18 months.
Excellent video! I spent the last half of my 34 years in IT working with the Advanced Pick and Unidata databases which depend heavily upon hashed access. The key to efficiency is selecting the right modulus when creating your file. Too small and you get too many collisions, too large and you waste space. The multivalue database concept goes back to the mid-60’s, but it is still hard to beat for efficiency and ease of use.
Fantastic. Not only did you lay out the problem well, and explain how hash tables work but you even set a good example of what any kind of teaching should be.
Holy shit! You made it sound like a piece of cake. I've been hearing about hash tables for so long and always thought it must be a rocket science until now. Hats off to you sir
this is the most beautiful explanation of hashing I've ever come across. Well done! All the other vids take a cryptic description and focus more on big ideas like blockchaining and encryption/security. Having a nice bit-sized chunk really helps out! Thanks!
I would like it if videos like this transitioned to such bigger concepts after giving a good foundational understanding like this. Would be real helpful, especially for beginners looking to advance.
One _very important_ case against open addressing is that any case where the key is not contained in the hash map can only be resolved in O(n) time, that is a time linear to the length of the whole map. Closed addressing can resolve this by simply traversing the much shorter list at the respective key. No matter if databases, caches or many other use cases, looking up a missing key is a very common situation.
That shouldn't matter much if the load factor is kept low and the hash function has a good distribution, but yeah it is a possibility lol A uniform distribution with 50% load factor will give you an average of just 1 miss
I have reviewed several RUclips explanations about hash tables and hash functions, and none come close to this one. It was clear and to the point. Great job and thank you!
I seriously appreciate the amount of clarity you have before delving in and making the concept much more easier and understandable. Seriously appreciate your explanation and presentation. Keep up and continue the good work.
My compsci professor is useless. I'm subscribing to this channel as it will really help me to get through the remaining 3 years of my compsci degree. Thank you for your work!
You already got tons of love in the comments, but you deserve one more. Very well explained with simple, yet very useful, animations. Thank you very much for the great work! :-)
What??? This is probably the most insane condensation of information I have ever seen. My professors put up a 2 hour lecture, with an additional 1 hour lecture of extra material if we needed it. Had no fking idea what they were talking about. This video, I completely understand it. Thanks.
Mostly... Beatrice Tinsley (Astronomer) Tim Berners Lee (Computer Scientist of WWW fame) Leo Adelman (Mathematician of RSA fame) Jan Łukasiewicz (Logician of reverse Polish notation fame) Lou Kauffman (Mathematician - of polynomial fame) Max Newman (Mathematician and code breaker) Ada Lovelace(Computer Scientist) Ted Nelson (Computer Scientist and Philosopher) Sam (Sam Malone - the guy in Cheers) Mia (the space station) Zoe (Zoe Saldana - Guardians of the Galaxy, Star Trek)
ı've been listening for a whole year from my professor and couldnt understand any of these... now even i cant believe that i got the point . thank you so much
Have an organized and well-structured presentation helps students a bunch when introducing such new concepts. Instead, my dear professor just freestyled and droned forever during class. What a difference you made sir. Thank you
This is the best video available on youtube for hashing. I mean really. I scoured youtube to understand this concept. But you explained it in such an awesome manner. I hate youtube for not recommending me this sooner. I love youtube bcoz it recommended me this.
I got my BSCS 20 years ago and because I was an awful student, I didn't know until today how hash tables actually work - despite constantly relying on them as a software engineer. Divide the hash code by your allocated storage space - so obvious and I never thought of it. Now I'm wondering about using a binary tree instead of a linked list for closed address collision resolution. Slower to insert, but faster to retrieve, and probably less need to reallocate key space (though again slower to do so).
So I read your comment awhile back and for some reason I just had an epiphany on it (the mind works in strange ways I know)... If you are using a binary tree for you collision resolution that would presume some sort of ordering to the data in hash table since the binary tree must have an ordering of nodes where the right child node is greater than the left child node, correct? So there wouldn't be a problem if you are storing primitives, but what if you are storing people objects? How would the binary tree know what order you want your objects in? If you initially chose to order the objects in the tree by the person's name but later wanted to locate an object via their age, you'd have to reorganize your trees. When storing objects and you are unsure of what data you are going to use to look them up, I feel it would be easier to use the linked list and simple linear search. I could be completely off base on this thinking so I'd love to hear your thoughts on it!
@@jacobgarwin5616 you can sort by your arbitrary definition of value. Objects should have compareTo methods to be able to compare values between objects
Why did I spend all that money on an engineering degree, when all I needed was this channel!!!
Thanks for the complement. University does have it's benefits :)KD
You deserve my data structures professor's salary
Why not send him a link to my channel :)
mine too. serves no purpose
Ha ha ha rofl
Bang on, I was thinking the same :-)
Haha x) Great video Kevin!
Before 14 minutes, I thought I will never understand Hash Tables.
Good work and Thank you.
They are actually quite simple in principal aren't they! Thanks for the comment.
We got the reason here why they are used and how ... then it's very easy to use them in the right way !
same here, this video is so cool.
Exactly sir, very good video indeed.
He is a life saver isn't he?!
Years after, this video is still immensely valuable. This is what teaching is supposed to look like. Thank you for your amazing work!
Thank you. Crikey! that was uploaded nearly 5 years ago! :)KD
There are so many things wrong with this 'explanation' I'm not surprised that a half wit like you is impressed by this video.
You defininetly have no idea what he is saying here. And he is talking utter nonsense.
This video
So clear and easy to understand
Thank you
🏆🏆🏆
@@TheeSlickShady_Dave_K You understood nothing so you can stop pretending.
@@ThunderAppeal haha got me!
Your voice sounds like a National Geographic documentary. Amazing explanation! Subscribed.
This guy taught me ict when i was little trust me he sounds just like it
ThePandaGuitar he’s my computer science teacher
His British accent sounds so cool!
😂😂😂😂😂😂😂
he sounds a little bit like Tom Scott
This is what youtube is for. Just a clear explanation of interesting ideas. +1
CAKE BAKING ruclips.net/video/Ds9Jhu5E1sI/видео.html&ab_channel=MisterWessells
You actually explain it as if we've never heard of the concept before! Something a lot of CS professors seem to not understand...
Now this is a real education , so well described, you got the real tallent sir, really appreciating.
You teaching approach can make anyone from zero to hero
"indices are calculated from the data" thats literally all I needed to understand hash tables but surpirsingly I've never heard it once when people have mentioned them. Of course the bit on how to handle collisions was useful as well
Exactly - that is the essence of a hash table - it's that simple. A basic understanding of how physical RAM works explains why one memory location can can be accessed just as quickly as any other. :)KD
Same for me
For me that part was intuitive, but I didn't understand how you would deal with that process creating multiple entries in the same index. This video was a big aha moment.
That is exactly what i thought. Exactly that one piece of information that i was missing. I have no idea why that was never made clear anywhere else i looked.
you basically summarized 3 whole lectures of class into just 14 minutes. You're a life saver!
I've never thought I could find such well presented and easy-to-follow explanaition about this topic in less tan 15 minutes. It's a gem among stones.
first video I've seen so far that actually explains the fundamentals behind what is hashing
glad to help :)KD
Professors should just play videos like this at the start of class. Would improve student performance immensely.
CS 260 student here and Chat GPT recommended this video. I can see why, this was so helpful as someone who literally has never coded a hash table into a project yet this video is exciting to see how I can store data and access it. Now I cant wait to start coding this into a project!
Delighted to help. It's interesting to hear I have the attention of chatbots. :)KD
This is the clearest, most concise explanation of this structure I've come across. Thank you! A lot of people really muddy this subject up.
Thank you :)KD
Yes I was also going to tell that, this is the clearest and most concise explanation I've come across
can't stop myself to like this video. obsessed with the explanation
Thank you so much :)KD
The video is very, very, very well made. That's a great deal of information in just under 14 minutes, and it is very clearly presented. You've more than earned a new subscriber.
Absolute legend. The best introductory video I have seen so far on Hash Tables and Hash functions. Thank you, Thank you, Thank you 😊😊😊
You're most welcome :)KD
Some Profs can, of course, explain what is hash table, but you just do that in about 10 mins!!!
Your explanation is so clear and easy to understand, I think that is what students are looking for! Thank you Sir!
Came to learn about Hash tables.
Stayed for the accent.
Subbed and liked for the brilliant explanation!
Thank you, and welcome :)KD
This was posted 5 years ago but I can say it is still relevant today. Appreciate the wonderful explanation
Thank you :)KD
This explenation is amazing. Thanks.
YT is full of confusional and long but partial explanations, but finally I found your video, which is presenting how deep is the rabbit hole in any direction in a concise and clear way.
Thank you. Much appreciated :)KD
In a perfect world every teacher would be as clear as this guy :)
You are very kind :)KD
Agreed!
This should be the goal of all teachers. clear in logic, super easy to understand.
You're very kind :)KD
I don't normally comment on videos but this was the most helpful explanation of what a hash table is and how to use one. I have been looking for good articles and videos for a couple of hours before I found this video! So thank you!
Thanks for talking the time to comment :)
It is very hard to find a video that is this concise and easy-to-understand at the same time. Everything is summarized perfectly
Thank you :)KD
This just cleared every possible doubt that I could possibly have related to hash tables.
Thank you for the clear and concise explanation without making it sound like we're studing rocket science.
You're welcome :)KD
By far one the best explanation videos I've ever watched. The most useful 14 minutes of my life. Thanks!
Glad to be of help. Thanks for the lovely comment. :)KD
Your explanation of collisions and their solutions (5:06) is the most comprehensive I've come across while brushing up on my fundamentals during my job search. I'm elated I stumbled across your video. Thank you so much for this.
This is one of the best lectures I have ever found to understand something clearly and precisely, yet in a reasonably short time.
Really eloquent description of the subject. This is the first time I feel like I actually know something about Hash Tables. Thank you.
Fantastic tutorial. Just perfect pace, perfect intonation, perfect graphics and perfect depth to explain the topic to non-educated programmers like me. Subscribed!
i have been searching on youtube for almost an hour but couldnt find an appropriate video of explanation of hash table until i find this video .....beautifull explanation
I just stumbled upon your video and I must say, you did an amazing job! Your clear and concise explanation helped me understand the concept better than any textbook or lecture ever could. Your use of examples and visual aids made the topic so much easier to grasp.
Thank you so much. I really appreciate comments like yours :)KD
I was about to give up on understanding Hash Tables and then finally i find this video that makes it so damn clear and comprehensible. I don't know why, but that one piece of information that tells us, that the position in the array is CALCULATED using the content of the key is never mentioned anywhere, while to me that was the most important piece of the puzzle. Thanks a lot!
You are most welcome. Another part to the puzzle is realizing that a single memory address is actually a row reference and a column reference. Hence one memory location can be accessed just as quickly as any other. You might light my series about DRAM. :)KD
ok this was brilliant . we need more teachers like you . understanding whats going rather than just learning by heart .
Thank you so much :)KD
Proper explanations, logically and clearly expounded, in comprehensible English. This sort of material is by no means easy to find.
Thank you. I need to work om making it easier to find. :)KD
I just found this. As a professional with 30 year experience with data analysis you are spot on, well explained. I subscribed and set notifications on, hope to see plenty more from you.
This is the first video about hash tables hash maps linked lists that I actually understood. Thank you.
You are welcome :)KD
I spent hours trying to understand this for my final exam tomorrow to no avail. Until i came across your video! Thank you so much for this :)
Best explanation I have heard yet to explain hash tables, bravo. To me when I think of what is an elegant solution to a complicated problem, it doesn't get much better than this kind of thing.
Thank you so much. I do agree, some of these standard data structures and algorithms are pure genius :)KD
Never heard someone so hyped about hash tables, but I love it. Thanks for the great explanation!
It's a Sunday morning pastime.
I was getting tired after watching a bunch of videos on this subject and at the beginning of this one I was about to close it because I thought it's not gonna be engaging enough. I'm so glad I didn't, this was so interesting to watch and you explain it so simple and well. Thank you very much sir!!!
Thank you. You're very welcome :)KD
This is a SUPER good video.
I've always wondered how hash table worked.
But I didn't think it was this genius.
This video is a small miracle in the way it so concisely and clearly explains the concept. If the same technique was applied to all college-level computer science concepts, you'd finish your CS degree in 18 months.
Excellent video! I spent the last half of my 34 years in IT working with the Advanced Pick and Unidata databases which depend heavily upon hashed access. The key to efficiency is selecting the right modulus when creating your file. Too small and you get too many collisions, too large and you waste space. The multivalue database concept goes back to the mid-60’s, but it is still hard to beat for efficiency and ease of use.
thank god you decided to record youtube videos. You just destroyed my fear of hashing in under 15 minutes, you have my eternal gratitude
Tens of books couldn't teach me what you just did in a couple of minutes. you are fantastic!!!
This is the clearest and most concise explanation I've come across
You just got me like 1:30 hour of sleeping instead of having to search the entire internet.... Thanks a lot! Suscribed!
Fantastic. Not only did you lay out the problem well, and explain how hash tables work but you even set a good example of what any kind of teaching should be.
Holy shit! You made it sound like a piece of cake. I've been hearing about hash tables for so long and always thought it must be a rocket science until now. Hats off to you sir
I have been watching many videos, but This video has explained Hash tables in the best possible way!
Thank you :)KD
I don't normally like videos on youtube, but you helped me understand this concept.
a 14 mins video felt like 3 mins. while another video of 6 mins felt like an hour! thank you
You're welcome :)KD
this is the most beautiful explanation of hashing I've ever come across. Well done! All the other vids take a cryptic description and focus more on big ideas like blockchaining and encryption/security. Having a nice bit-sized chunk really helps out! Thanks!
Lovely comment. Thanks for making me smile :)KD
I would like it if videos like this transitioned to such bigger concepts after giving a good foundational understanding like this. Would be real helpful, especially for beginners looking to advance.
13 minutes of your video explained more than one and a half hour of my datastructure lessons. Thank your very much!!!
You are very welcome. Thanks for the comment. K:D
Just incredible, thank you for your time and efforts for these incredible videos. Your teaching abilities are through the roof!
You are very kind :)KD
I come across this page today. A game changer, I tell you!!!!!! Thank you sooo much.
You're very welcome :)KD
Basically i listened 2min of your video and i understood everything good job man!
This may be the most well paced, organized, and succinct instructional video I've watched, thank you!
Thank you. It means a lot. :)KD
One _very important_ case against open addressing is that any case where the key is not contained in the hash map can only be resolved in O(n) time, that is a time linear to the length of the whole map. Closed addressing can resolve this by simply traversing the much shorter list at the respective key.
No matter if databases, caches or many other use cases, looking up a missing key is a very common situation.
That shouldn't matter much if the load factor is kept low and the hash function has a good distribution, but yeah it is a possibility lol
A uniform distribution with 50% load factor will give you an average of just 1 miss
I have reviewed several RUclips explanations about hash tables and hash functions, and none come close to this one. It was clear and to the point. Great job and thank you!
You are the best voice actor in CS. You deserves it!
I seriously appreciate the amount of clarity you have before delving in and making the concept much more easier and understandable. Seriously appreciate your explanation and presentation. Keep up and continue the good work.
Thank you. You comment is much appreciated. :)KD
I had a light bulb moment after only 3 minutes into this lecture... amazing! Thanks!
It's all about light bulbs. :) KD
Described way better than all the other videos I've seen on this topic. Thank you
Excellent explanation. Appreciated the clarity and succinctness
I often didn't understand where (or why) this "hash functions" came from, now I totally get it. Such a good explanation, thanks for the content!
You're most welcome :)KD
Better explanation than my tutor did in 3 hours! So cool, thanks for posting the video!
Very fortunate to find this great RUclips channel
Thank you :)KD
You sir deserves a medal;
I'm still waiting for the queen to get in touch. :)
Some people are amazing coders but not amazing at explaining, and you are the exception
You're too kind. Thank you :)KD
Give this man a Medal, thank you!
My compsci professor is useless. I'm subscribing to this channel as it will really help me to get through the remaining 3 years of my compsci degree. Thank you for your work!
You already got tons of love in the comments, but you deserve one more. Very well explained with simple, yet very useful, animations. Thank you very much for the great work! :-)
Thank you. Comments like yours make my day. :)KD
this is one of the easiest explanation came across over YT.
Thank you :)KD
very good explanation. after a long time, i found a good lecture for hash table. thank you so much for your wonderful lecture
What???
This is probably the most insane condensation of information I have ever seen.
My professors put up a 2 hour lecture, with an additional 1 hour lecture of extra material if we needed it.
Had no fking idea what they were talking about. This video, I completely understand it.
Thanks.
Thank you for the complement. Maybe you should send your professor a link to this video :)KD
@@ComputerScienceLessons Haha perhaps, or at least to the others taking the course
The examples he uses are real. Ex:
Bea = Beatrice Tinsley; created galaxy models
Ada Lovelace = Ada Lovelace; the first programmer
Mostly...
Beatrice Tinsley (Astronomer)
Tim Berners Lee (Computer Scientist of WWW fame)
Leo Adelman (Mathematician of RSA fame)
Jan Łukasiewicz (Logician of reverse Polish notation fame)
Lou Kauffman (Mathematician - of polynomial fame)
Max Newman (Mathematician and code breaker)
Ada Lovelace(Computer Scientist)
Ted Nelson (Computer Scientist and Philosopher)
Sam (Sam Malone - the guy in Cheers)
Mia (the space station)
Zoe (Zoe Saldana - Guardians of the Galaxy, Star Trek)
@@ComputerScienceLessons Except the space station is MIR, not MIA. Just saying.
мое орфографическое отстой
Yeah and Tod is real too. Tod Einstein. Famous for drinking a relatively large amount of beer in a very short amount of time.
M Detlef she died. A life of debauchery is often short.
holy legend, i have 2 days left for my data structures project and you just saved me so much time. BIG LIKE
Delighted to help :)KD
this dude saving lives in 2020
Best Hash Table tutorial on RUclips - it's simple and relatable. Thank you.
Thanks for the comment. Much appreciated. :) KD
Very neat explanation! Thanks for the detailed picturization of how things are stored internally.
You're welcome. Thanks for the feedback.
I like how he speaks without any pauses or mistakes.
Thanks. I usually script it first :)KD
You have a fine English accent, Mate. It helps my brain gear run smooth
He sounds like the guy who presents "Explaining Computers", and if he is the same guy, wouldn't surprise me one bit given the topic of both channels.
CAKE BAKING ruclips.net/video/Ds9Jhu5E1sI/видео.html&ab_channel=MisterWessells
ı've been listening for a whole year from my professor and couldnt understand any of these... now even i cant believe that i got the point . thank you so much
And that's how you teach!!! Thank you so much for such a clear explanation 😊
You literally are the only person to ever make me understand this mess. Thank you so so much!
I'm delighted to help :)KD
You are an absolutely amazing teacher sir,you have my respect 🙏
Thank you so much 😳 :)KD
You have explained Hash Tables in clearer and more pleasant way in 14min than my professor during 1,5h lecture. Thank you.
Cut to the chase - that's what I say. :)
The best explanation I have encountered so far. Thank you!
Have an organized and well-structured presentation helps students a bunch when introducing such new concepts. Instead, my dear professor just freestyled and droned forever during class. What a difference you made sir. Thank you
Great video, I'm totally new to this and actually understand hashmaps now. Thank you so much!
This is the best video available on youtube for hashing. I mean really. I scoured youtube to understand this concept. But you explained it in such an awesome manner. I hate youtube for not recommending me this sooner. I love youtube bcoz it recommended me this.
Thanks for the complement. Delighted to help :)KD
I got my BSCS 20 years ago and because I was an awful student, I didn't know until today how hash tables actually work - despite constantly relying on them as a software engineer. Divide the hash code by your allocated storage space - so obvious and I never thought of it.
Now I'm wondering about using a binary tree instead of a linked list for closed address collision resolution. Slower to insert, but faster to retrieve, and probably less need to reallocate key space (though again slower to do so).
I love those light bulb moments.
@@ComputerScienceLessons Same! Been writing code for 35 years and I still find surprises in the basics all over the place.
So I read your comment awhile back and for some reason I just had an epiphany on it (the mind works in strange ways I know)...
If you are using a binary tree for you collision resolution that would presume some sort of ordering to the data in hash table since the binary tree must have an ordering of nodes where the right child node is greater than the left child node, correct? So there wouldn't be a problem if you are storing primitives, but what if you are storing people objects? How would the binary tree know what order you want your objects in? If you initially chose to order the objects in the tree by the person's name but later wanted to locate an object via their age, you'd have to reorganize your trees. When storing objects and you are unsure of what data you are going to use to look them up, I feel it would be easier to use the linked list and simple linear search.
I could be completely off base on this thinking so I'd love to hear your thoughts on it!
@@jacobgarwin5616 No reason you can't have multiple trees for ordering the same data by using different comparison functions. :)
@@jacobgarwin5616 you can sort by your arbitrary definition of value. Objects should have compareTo methods to be able to compare values between objects
You just compressed a 2h CS lecture into 13mins, good job. Even explained it better than my Prof.
Thank you :)KD
That is what we call a man born to be a teacher.
I don't know if Hash tables are simple or this guy just explained it perfectly. What a legend! Thank you so much!