Algorithms/Data Structures are common topic in any computer science. Mostly students deal with algorithms like Binary Tree, Sorting, Linked list etc. Even though these topics are must, what is missing is understanding data structures and algorithms (like Merkle tree, Consistent hashing, Bloom filter etc) which are in fact used in real world softwares. Many such algorithms are used in our day to day software. Understanding such algorithms are even essential to crack technical interviews. That is the primary reason for building up this course.
Algorithms/Data Structures are common topic in any computer science. Mostly students deal with algorithms like Binary Tree, Sorting, Linked list etc. Even though these topics are must, what is missing is understanding data structures and algorithms (like Merkle tree, Consistent hashing, Bloom filter etc) which are in fact used in real world softwares. Many such algorithms are used in our day to day software. Understanding such algorithms are even essential to crack technical interviews. That is the primary reason for building up this course.
In this video series, we are going understand Merkle tree, how it is working by building it from scratch (in JavaScript). We will see how Merkle tree is used in Git by building a very minimal git version from scratch. At the end of this course, we will also see how this algorithm is used in Bitcoin, DynamoDb as well.
This is a series of course, in which each course will teach you a specific algorithm and its uses in real world.
What are you waiting for? Sign up and learn the Data Structures And Algorithms In Real World.
Note: We have picked Javascript as a language to implement the concept in this course, however I believe the same can be achieved in other languages by following the lectures.
We will quickly understand what we will do in this course.
We will understand Merkle tree in theory
In this video, we will understand what are called hashing and one-way hashing
We will see why hashing is needed in real world
In this video we will start implementing merkle tree
In this video, we will continue our discussion on hashing and sha256.
Updating the tree hashes recursively.
Understanding updateChildrenHashes in depth.
In this video, we will quickly see what is Git and how status/commit works.
We will see how Merkle Tree solves the Git problem
In this video we will write two function status and printTree
We will test our mini git.
Final thoughts on Merkle tree and where they are used in other domains.
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.