---
title: "Algorithm Pattern Atlas"
tags:
  - "algorithm-atlas/home"
atlas_type: "home"
locale: "en"
template_count: 69
recipe_count: 12
family_count: 18
generated: true
---
<!-- algorithm-atlas:generated -->

# Algorithm Pattern Atlas

> [!abstract] From recognition signals to invariants and reusable code skeletons; all content is original, source-neutral, and bilingual.

[Open the review cheatsheet](../HTML/en/review-cheatsheet.html) · [[en/01 - Visualizations|Browse learning views]] · [[en/02 - Obsidian Graph Guide|Use native Graph]]

![[en/Views/Templates.base#All templates]]

![[en/Views/Recipes.base#Composite recipes]]

## Families

- [[en/Concepts/Families/backtracking|Backtracking and constraint search]]
- [[en/Concepts/Families/binary-search|Binary search and monotone answer]]
- [[en/Concepts/Families/bit-state|Bit manipulation and bitmask state]]
- [[en/Concepts/Families/divide-conquer|Divide and conquer]]
- [[en/Concepts/Families/dsu-mst|DSU, MST, and offline activation]]
- [[en/Concepts/Families/dynamic-programming|Dynamic programming]]
- [[en/Concepts/Families/geometry-simulation|Geometry, sweep, simulation, and parsing]]
- [[en/Concepts/Families/greedy|Greedy and scheduling]]
- [[en/Concepts/Families/heap-stream|Heap, selection, and stream]]
- [[en/Concepts/Families/math-combinatorics|Math, number theory, and combinatorics]]
- [[en/Concepts/Families/ordered-frontier-path|Ordered frontier and path]]
- [[en/Concepts/Families/pointers-window|Pointers and sliding window]]
- [[en/Concepts/Families/prefix-hash|Prefix, difference, and hashed state]]
- [[en/Concepts/Families/range-query|Range-query data structures]]
- [[en/Concepts/Families/stack-deque|Stack and monotone deque]]
- [[en/Concepts/Families/string-algorithms|String matching, hashing, and palindrome]]
- [[en/Concepts/Families/traversal-connectivity|Traversal and connectivity]]
- [[en/Concepts/Families/tree-trie|Tree, BST, and trie]]

## My notes

<!-- algorithm-atlas:manual-begin -->
<!-- Write manual notes only between the markers; regeneration preserves them. -->
<!-- algorithm-atlas:manual-end -->
