Data structures
Data Structures and Algorithms in Go is a good list.
Notes
- The basic building block is a linked list and most structures are built using these. Depending on how the data structure is set up and used, it can be a queue, stack, tree, etc.
- Data structures are the basis of what you start off with for any program. The key is to understand the domain you want to model. It's hardly unique to FAANG.
Links
- Data Structures and Algorithms implementation in Go
- Which algorithms/data structures should I “recognize” and know by name?
- Dictionary of Algorithms and Data Structures
- Phil’s Data Structure Zoo
- The Periodic Table of Data Structures (HN)
- Data Structure Visualizations (HN) (HN)
- Data structures to name-drop when you want to sound smart in an interview
- On lists, cache, algorithms, and microarchitecture (2019)
- Topics in Advanced Data Structures (2019) (HN)
- CS166 Advanced DS Course (2019)
- Advanced Data Structures (2017) (HN)
- Write a hash table in C
- Python Data Structures and Algorithms
- HAMTs from Scratch (2018)
- JavaScript Data Structures and Algorithms
- Implementing a Key-Value Store series
- Open Data Structures - Provide a high-quality open content data structures textbook that is both mathematically rigorous and provides complete implementations. (Code)
- A new analysis of the false positive rate of a Bloom filter (2009)
- Ideal Hash Trees
- RRB-Trees: Efficient Immutable Vectors
- Some data structures and algorithms written in OCaml
- Let’s Invent B(+)-Trees (HN)
- Anna - Low-latency, cloud-native KVS.
- Persistent data structures thanks to recursive type aliases (2019)
- Understanding LSM trees: What powers write-heavy databases (2020) (HN)
- Bloom Filters for the Perplexed (2017)
- Understanding Bloom Filters (2020)
- Dense vs. Sparse Indexes (2020)
- Data Structures and Algorithms Problems
- Data Structures & Algorithms I Actually Used Working at Tech Companies (2020) (Lobsters) (HN)
- Let’s implement a Bloom Filter (2020) (HN)
- Data Structures Part 1: Bulk Data (2019) (Lobsters)
- Data Structures Explained
- Introduction to Cache-Oblivious Data Structures (2018)
- The Daily Coding newsletter - Master JavaScript and Data Structures.
- Lectures Note for Data Structures and Algorithms (2019)
- Mechanically Deriving Binary Tree Iterators with Continuation Defunctionalization (2020)
- Segment Tree data structure
- Structure of a binary state tree (2020)
- Introductory data structures and algorithms
- Applying Textbook Data Structures for Real Life Wins (2020) (HN)
- Michael Scott — Nonblocking data structures lectures (2020) - Nonblocking concurrent data structures are an increasingly valuable tool for shared-memory parallel programming.
- Scal - High-performance multicore-scalable data structures and benchmarks. (Web)
- Hyperbolic embedding implementations
- Morphisms of Computational Constructs - Visual catalogue + story of morphisms displayed across computational structures.
- What is key-value store? (build-your-own-x) (2020)
- Lesser Known but Useful Data Structures
- Using Bloom filters to efficiently synchronize hash graphs (2020)
- Bloom Filters by Example (Code)
- Binary Decision Diagrams (HN)
- 3 Steps to Designing Better Data Structures (2020)
- Sparse Matrices (2019) (HN)
- Algorithms & Data Structures in C++
- Fancy Tree Traversals (2019)
- The Robson Tree Traversal (2019)
- Data structures and program structures
- cdb - Fast, reliable, simple package for creating and reading constant databases.
- PGM-index - Learned indexes that match B-tree performance with 83x less space. (HN) (Code)
- Structural and pure attributes
- Cache-Tries: O(1) Concurrent Lock-Free Hash Tries (2018)
- Lockless algorithms for mere mortals (2020)
- Notes on Data Structures and Programming Techniques (2021)
- Memory, Cache Locality, and why Arrays are Fast (Data Structures and Optimization)
- Implicit In-order Forests: Zooming a billion trace events at 60fps (2021) (Lobsters)
- Bloom filters explained in a single image (2021) (HN)
- Traversing nested data-structures in various languages (HN)
- Teaching Bloom Filters new tricks (2020)
- Detailed Design of a Lock-Free Queue (2014)
- Finding the Median of 2 Sorted Arrays in Logarithmic Time (2019)
- What is a Merkle Tree? (2020)
- Bloom Filters - Much, much more than a space efficient hashmap! (2020)
- Ribbon filter: practically smaller than Bloom and Xor (2021) (Article)
- B-tree Path Hints (HN)
- How Multiplayer Data Structures Work (2021)
- Classical Data Structures That Can Outperform Learned Indexes (2018) (Lobsters) (HN)
- B-Trees: More Than I Thought I'd Want to Know (2021)
- Using Tree Structures with Pagination to build Folder Navigation (2021)
- Fenwick Trees (2021)
- B-Trees and Databases (2021) - How B-Trees power your database in handling data-intensive workloads.
- Lock-Free Data Structures (2007)
- Monoids and Finger Trees
- Implicit Heaps
- Word-Aligned Bloom Filters (2021) (HN)
- Experimenting with column- and row-oriented data structures (2021)
- Real time Editing of Ordered Sequences (2017)
- Implementing Fractional Indexing (2020) (Tweet)
- A Common-Sense Guide to Data Structures and Algorithms Book (2017)
- Array Layouts for Comparison-Based Searching (2015) (Lobsters)
- The Great Tree-List Recursion Problem (HN)
- On Dynamic Succinct Graph Representations (2020) (Code)
- When are enums not a code smell? (HN)
- Data Structures - Full Course Using C and C++ (2021)
- How do arrays work? (2021)
- An efficient circular queue of strings (2018)
- Data Structures in JavaScript - Illustrated Data Structures — Video Series.
- Static B-Trees: A data structure for faster binary search (HN)
- Data Structures in the Fleet Editor (2022) (HN)
- Segment Trees
- Functional Queues
- Data Structures and Algorithms in Go
- Roaring Bitmaps - Compressed bitmaps. They can be hundreds of times faster.
- Maximum Flow and Minimum-Cost Flow in Almost-Linear Time (2022) (HN)
- Are tagged unions overrated? (2021)
- Understanding Bloom filters by building one (HN)
- Data Structure Algorithms Low Level Design and High Level Design collection of resources
- The true cost of linked lists (2022) (HN)
- Data Structure Visualizer (Code)
- Ask HN: What are some cool but obscure data structures you know about? (2022)
- Let's Talk SkipList (2022) (HN)
- A primer on Roaring bitmaps: what they are and how they work (2022)
- Using bitmaps to run interactive retention analyses over billions of events for less than $100/mo (2022)
- Data Structure Sketches (HN)
- Lectures in Advanced Data Structures (2021)
- SingleStore’s Skiplist Indexes
- Ask HN: Books on designing disk-optimized data structures? (2022)
- In defense of linked lists (2022) (HN) (Lobsters)
- Fast Functional Lists, Hash-Lists, Deques and Variable Length Arrays (2002) (HN)
- Challenging algorithms and data structures every programmer should try (2022)
- Data Structures & Algorithms for Coding Interview
- YClass - Program that allows you to inspect and recreate data structures of other processes.
- Efficient Data Structures for Tamper-Evident Logging (2009) (Lobsters)
- hg64: a 64-bit histogram data structure (2022)
- This Data Structure could be used for Autocomplete (2021)
- Ask HN: What is new in Algorithms / Data Structures these days? (2023)
- CS 61B Data Structures, Spring 2023 UC Berkeley (HN)
- An Introduction to Bε-trees and Write-Optimization (2015)
- High-performance tidy trees visualization (2023)
- A compressed indexable bitset (2023) (HN)
- The most elegant search data structure | (a,b)-trees
- Treemaps are awesome (Lobsters) (HN)
- The Taming of the B-Trees (2021)
- Grokking AVL and RAVL Trees (2023) (HN)
- Half-Edge Data Structures (2019) (Lobsters) (HN)
- Fibonacci Heaps or "How to invent an extremely clever data structure" (2022)
- Mastering Bloom Filters: Big Data Processing in Python (2023)