# Algorithms and Data Structures
### Basic Data Structures
1. **[Array](Array.md)**
2. **[Hash Maps](Hash%20Maps.md)**
3. **[Types-of-Graphs](Types-of-Graphs.md)**
4. **[Tree-Maps](Tree-Maps.md)**
5. **[Tree-vs-DAG](Tree-vs-DAG.md)**
6. **[Cuckoo Hashmaps]**(Cuckoo%20Hashmaps.md)
---
### Basic Algorithms
1. **[Binary Search Trees](Binary%20Search%20Trees.md)**
### Graph Algorithms
1. **[Graph-Algorithms](Graph-Algorithms.md)**
---
### Data Engineering Algorithms
1. **[Groupby](Groupby.md)**
---
### Probabilistic Data Structures (/posts/[Sketches](Sketches.md))
1. **[Bloom-filters 1](Bloom-filters%201.md)**
2. **[Finger Print](Finger%20Print)**
3. **[Heavy-Hitters](Heavy-Hitters.md)**
4. **[Count-min Sketch](Count-min%20Sketch.md)**
5. **[Count-Sketch](Count-Sketch.md)**
6. **[Hyperloglog](Hyperloglog.md)**
7. **[TDigest](TDigest.md)**
8. **[Locality Sensitive Hashing (LSH)](Locality%20Sensitive%20Hashing%20(LSH).md)**
9. **[Race Sketches](Race%20Sketches.md)**
### Advanced Algorithms
1. **[Fast Fourier Transform](Fast%20Fourier%20Transform)**
### Advanced Data Structures
1. ** [KD-Tree](KD-Tree.md)**
### Algorithms in General
Search algorithms
* A greedy algorithm is one that always takes the locally best option
* Beam Search → it is a type of greedy algorithm. It is an optimization of best-first search.
Algorithms
* Update your definition of algorithm in obsidian: pg 42 why greatness can’t be planned.
---
Date: 20211004
Links to:
Tags:
References:
* []()