# shahjalalshohag/code-library architecture

> Architecture diagram of the GitHub repository shahjalalshohag/code-library, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-13). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/shahjalalshohag/code-library
- Repository: https://github.com/shahjalalshohag/code-library

## Overview

This is a personal competitive-programming code library: users browse topic-organized algorithm and data-structure templates, study or adapt a relevant template, and apply it in their own solutions. The README also points users to an external topic list for related problems, tutorials, and progress tracking. Source excerpts show standalone examples rather than a shared runtime or internal call pipeline, so the graph models the documented discovery workflow and major topic areas, not unsupported dependencies between snippets.

Main entry points: [`Basics`](https://github.com/shahjalalshohag/code-library/tree/main/Basics) (Basic Techniques), [`Miscellaneous`](https://github.com/shahjalalshohag/code-library/tree/main/Miscellaneous) (Miscellaneous), [`Data Structures`](https://github.com/shahjalalshohag/code-library/tree/main/Data%20Structures) (Data Structures), [`Dynamic Programming Optimizations`](https://github.com/shahjalalshohag/code-library/tree/main/Dynamic%20Programming%20Optimizations) (DP Optimizations)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_foundations["Foundations"]
  node_basics["Basic Techniques"]
  node_miscellaneous["Miscellaneous"]
  node_bigint["Big Integer<br/>[BigInt.cpp]"]
end

subgraph group_structures["Data Structures"]
  node_data_structures["Data Structures"]
  node_implicit_treap["Implicit Treap<br/>[Implicit Treap.cpp]"]
  node_top_tree["Top Tree<br/>[Top Tree.cpp]"]
end

subgraph group_algorithms["Algorithms"]
  node_dynamic_programming["DP Optimizations"]
  node_game_theory["Game Theory"]
  node_graph_theory["Graph Theory"]
  node_bellman_ford["Bellman-Ford<br/>[Bellman Ford.cpp]"]
end

subgraph group_math["Math &amp; Number Theory"]
  node_math["Mathematics"]
  node_polynomial["Polynomial Tools<br/>[Polynomial.cpp]"]
  node_faulhaber["Faulhaber Formula"]
  node_subset_sum["Subset Sum"]
  node_number_theory["Number Theory"]
  node_bell_numbers["Bell Numbers<br/>[Bell Number.cpp]"]
  node_stirling["Stirling Numbers"]
end

subgraph group_specialized["Specialized Topics"]
  node_geometry["Geometry"]
  node_geometry_2d["2D Geometry<br/>[Geometry 2D.cpp]"]
  node_geometry_3d["3D Geometry<br/>[Geometry 3D.cpp]"]
  node_point_location["Point Location<br/>[Point Location.cpp]"]
  node_voronoi["Voronoi Diagram"]
  node_strings["String Algorithms"]
end

node_programmer(("Programmer"))
node_topic_list["Topic List"]

node_programmer -->|"browses topics"| node_basics
node_programmer -->|"browses topics"| node_data_structures
node_programmer -->|"browses topics"| node_dynamic_programming
node_programmer -->|"browses topics"| node_game_theory
node_programmer -->|"browses topics"| node_graph_theory
node_programmer -->|"browses topics"| node_geometry
node_programmer -->|"browses topics"| node_math
node_programmer -->|"browses topics"| node_number_theory
node_programmer -->|"browses topics"| node_strings
node_programmer -->|"browses topics"| node_miscellaneous
node_programmer -->|"opens learning list"| node_topic_list
node_topic_list -->|"offers practice"| node_programmer

click node_basics "https://github.com/shahjalalshohag/code-library/tree/main/Basics"
click node_data_structures "https://github.com/shahjalalshohag/code-library/tree/main/Data%20Structures"
click node_implicit_treap "https://github.com/shahjalalshohag/code-library/blob/main/Data%20Structures/Implicit%20Treap.cpp"
click node_top_tree "https://github.com/shahjalalshohag/code-library/blob/main/Data%20Structures/Top%20Tree.cpp"
click node_dynamic_programming "https://github.com/shahjalalshohag/code-library/tree/main/Dynamic%20Programming%20Optimizations"
click node_game_theory "https://github.com/shahjalalshohag/code-library/tree/main/Game%20Theory"
click node_graph_theory "https://github.com/shahjalalshohag/code-library/tree/main/Graph%20Theory"
click node_bellman_ford "https://github.com/shahjalalshohag/code-library/blob/main/Graph%20Theory/Bellman%20Ford.cpp"
click node_geometry "https://github.com/shahjalalshohag/code-library/tree/main/Geometry"
click node_geometry_2d "https://github.com/shahjalalshohag/code-library/blob/main/Geometry/Geometry%202D.cpp"
click node_geometry_3d "https://github.com/shahjalalshohag/code-library/blob/main/Geometry/Geometry%203D.cpp"
click node_point_location "https://github.com/shahjalalshohag/code-library/blob/main/Geometry/Point%20Location.cpp"
click node_voronoi "https://github.com/shahjalalshohag/code-library/blob/main/Geometry/Voronoi%20Diagram.cpp"
click node_math "https://github.com/shahjalalshohag/code-library/tree/main/Math"
click node_polynomial "https://github.com/shahjalalshohag/code-library/blob/main/Math/Polynomial.cpp"
click node_faulhaber "https://github.com/shahjalalshohag/code-library/blob/main/Math/Faulhaber%20Formula%20Fastest.cpp"
click node_subset_sum "https://github.com/shahjalalshohag/code-library/blob/main/Math/Subset%20Sum%20Problem.cpp"
click node_number_theory "https://github.com/shahjalalshohag/code-library/tree/main/Number%20Theory"
click node_bell_numbers "https://github.com/shahjalalshohag/code-library/blob/main/Number%20Theory/Bell%20Number.cpp"
click node_stirling "https://github.com/shahjalalshohag/code-library/blob/main/Number%20Theory/Stirling%20Number%20of%20the%20Second%20Kind%20for%20Fixed%20k.cpp"
click node_strings "https://github.com/shahjalalshohag/code-library/tree/main/Strings"
click node_miscellaneous "https://github.com/shahjalalshohag/code-library/tree/main/Miscellaneous"
click node_bigint "https://github.com/shahjalalshohag/code-library/blob/main/Miscellaneous/BigInt.cpp"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_basics,node_miscellaneous,node_bigint toneBlue
class node_data_structures,node_implicit_treap,node_top_tree toneAmber
class node_dynamic_programming,node_game_theory,node_graph_theory,node_bellman_ford toneMint
class node_math,node_polynomial,node_faulhaber,node_subset_sum,node_number_theory,node_bell_numbers,node_stirling toneRose
class node_geometry,node_geometry_2d,node_geometry_3d,node_point_location,node_voronoi,node_strings,node_programmer,node_topic_list toneIndigo
```

## Components

### Foundations

- [Basic Techniques](https://github.com/shahjalalshohag/code-library/tree/main/Basics): `Basics`
- [Miscellaneous](https://github.com/shahjalalshohag/code-library/tree/main/Miscellaneous): `Miscellaneous`
- [Big Integer](https://github.com/shahjalalshohag/code-library/blob/main/Miscellaneous/BigInt.cpp): `Miscellaneous/BigInt.cpp`

### Data Structures

- [Data Structures](https://github.com/shahjalalshohag/code-library/tree/main/Data%20Structures): `Data Structures`
- [Implicit Treap](https://github.com/shahjalalshohag/code-library/blob/main/Data%20Structures/Implicit%20Treap.cpp): `Data Structures/Implicit Treap.cpp`
- [Top Tree](https://github.com/shahjalalshohag/code-library/blob/main/Data%20Structures/Top%20Tree.cpp): `Data Structures/Top Tree.cpp`

### Algorithms

- [DP Optimizations](https://github.com/shahjalalshohag/code-library/tree/main/Dynamic%20Programming%20Optimizations): `Dynamic Programming Optimizations`
- [Game Theory](https://github.com/shahjalalshohag/code-library/tree/main/Game%20Theory): `Game Theory`
- [Graph Theory](https://github.com/shahjalalshohag/code-library/tree/main/Graph%20Theory): `Graph Theory`
- [Bellman-Ford](https://github.com/shahjalalshohag/code-library/blob/main/Graph%20Theory/Bellman%20Ford.cpp): `Graph Theory/Bellman Ford.cpp`

### Math & Number Theory

- [Mathematics](https://github.com/shahjalalshohag/code-library/tree/main/Math): `Math`
- [Polynomial Tools](https://github.com/shahjalalshohag/code-library/blob/main/Math/Polynomial.cpp): `Math/Polynomial.cpp`
- [Faulhaber Formula](https://github.com/shahjalalshohag/code-library/blob/main/Math/Faulhaber%20Formula%20Fastest.cpp): `Math/Faulhaber Formula Fastest.cpp`
- [Subset Sum](https://github.com/shahjalalshohag/code-library/blob/main/Math/Subset%20Sum%20Problem.cpp): `Math/Subset Sum Problem.cpp`
- [Number Theory](https://github.com/shahjalalshohag/code-library/tree/main/Number%20Theory): `Number Theory`
- [Bell Numbers](https://github.com/shahjalalshohag/code-library/blob/main/Number%20Theory/Bell%20Number.cpp): `Number Theory/Bell Number.cpp`
- [Stirling Numbers](https://github.com/shahjalalshohag/code-library/blob/main/Number%20Theory/Stirling%20Number%20of%20the%20Second%20Kind%20for%20Fixed%20k.cpp): `Number Theory/Stirling Number of the Second Kind for Fixed k.cpp`

### Specialized Topics

- [Geometry](https://github.com/shahjalalshohag/code-library/tree/main/Geometry): `Geometry`
- [2D Geometry](https://github.com/shahjalalshohag/code-library/blob/main/Geometry/Geometry%202D.cpp): `Geometry/Geometry 2D.cpp`
- [3D Geometry](https://github.com/shahjalalshohag/code-library/blob/main/Geometry/Geometry%203D.cpp): `Geometry/Geometry 3D.cpp`
- [Point Location](https://github.com/shahjalalshohag/code-library/blob/main/Geometry/Point%20Location.cpp): `Geometry/Point Location.cpp`
- [Voronoi Diagram](https://github.com/shahjalalshohag/code-library/blob/main/Geometry/Voronoi%20Diagram.cpp): `Geometry/Voronoi Diagram.cpp`
- [String Algorithms](https://github.com/shahjalalshohag/code-library/tree/main/Strings): `Strings`

### Other components

- **Programmer**
- **Topic List**

## Connections

- Programmer → Basic Techniques: browses topics (evidence: `README.md`)
- Programmer → Data Structures: browses topics (evidence: `README.md`)
- Programmer → DP Optimizations: browses topics (evidence: `README.md`)
- Programmer → Game Theory: browses topics (evidence: `README.md`)
- Programmer → Graph Theory: browses topics (evidence: `README.md`)
- Programmer → Geometry: browses topics (evidence: `README.md`)
- Programmer → Mathematics: browses topics (evidence: `README.md`)
- Programmer → Number Theory: browses topics (evidence: `README.md`)
- Programmer → String Algorithms: browses topics (evidence: `README.md`)
- Programmer → Miscellaneous: browses topics (evidence: `README.md`)
- Programmer → Topic List: opens learning list (evidence: `README.md`)
- Topic List → Programmer: offers practice (evidence: `README.md`)
