Check out my blog series on various topics from this page. These are collections of blog posts that explore a specific topic with the intent to help you learn.
Series Listing
Data Structures & Algorithms
This series explores many of the fundamental data structures and algorithms that are typically covered in college computer science courses. The aim of these posts is to give you a “good enough” understanding of how they work, how they’re implemented, and to help you get started thinking about their use cases. This series is not a replacement for a good textbook that covers these topics. You should plan on working through one at some point to gain a better and deeper understanding of these topics than what my series provides.
I have an accompanying github repository that you can clone for code samples. It also includes an interactive console tester that helps you visualize the operations of the data structures that we implement in the series.
Code examples and implementations use C#, but the way posts are written are generalized enough to be applicable to any language. After all, data structures and algorithms are not tied to any particular language.
Maps and Hash Tables
- Intro to Maps (and implementing a simple unsorted map)
- Hash Tables (how they work, hash codes and compression functions)
- Handling Collisions using Separate Chaining (with implementation)
- Handling Collisions using Open Addressing (with implementation)
.NET Tutorials & Walkthroughs
This series is just a random assortment of full and thorough walkthroughs of a particular topic.