Through a strong focus on intuition, examples, and real-world scenarios, you'll learn the inner workings of some very powerful data structures, and see how they can help you to both achieve great performance and solve seemingly complex problems.
Through a strong focus on intuition, examples, and real-world scenarios, you'll learn the inner workings of some very powerful data structures, and see how they can help you to both achieve great performance and solve seemingly complex problems.
Many problems in modern applications can be solved in a simple and elegant way by utilizing a specific data structure. In this course, Using Advanced Data Structures in Modern Applications, you will learn a variety of such data structures that are incredibly useful but normally outside the scope of introductory courses in programming or algorithmics. The course is loaded with examples and focuses on practicality rather than formulas and proofs. First, you will dive into the exciting world of hashing and see how different hash functions and hash table implementations perform very differently. Next, you will learn how bloom and cuckoo filters work and how they can be used to reduce communication between infrastructure components and prevent a cache from being wasted on one-off items. Then, you will discover how to efficiently index and query geographical positions and numeric properties using spatial indexing mechanisms such as geohashing, B-trees, R-trees, and M-trees. After that, you will explore the inner workings of disjoint-set data structures and see how they can be used to efficiently form clusters of related users of an application. Finally, you learn how tries and suffix trees work and how to easily build an auto-completion back-end upon them. By the end of this course, you will have a large toolbox of data structures at hand that can help you solve a number of apparently complex problems with minimal effort.
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.