# mahnoorahmed-dev/dsa-java architecture

> Architecture diagram of the GitHub repository mahnoorahmed-dev/dsa-java, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/mahnoorahmed-dev/dsa-java
- Repository: https://github.com/mahnoorahmed-dev/dsa-java

## Overview

This is a hands-on Java data-structures-and-algorithms practice repository, not an application with a single end-to-end service workflow. The learner’s workflow is to study and implement structures and algorithms across the documented topic areas. The sampled source shows a directly runnable array utility; other branches are included based on the README’s topic map, but their internal wiring is not established by the sampled source.

Main entry points: [`arrays/ArrayUtils.java`](https://github.com/mahnoorahmed-dev/dsa-java/blob/main/arrays/ArrayUtils.java) (Array Utilities)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_foundations["Foundations"]
  node_arrays["Array Utilities<br/>[ArrayUtils.java]"]
end

subgraph group_structures["Data Structures"]
  node_linkedlists["Linked Lists"]
  node_stacksqueues["Stacks &amp; Queues"]
  node_trees["Trees"]
  node_hashmaps["Hash Maps"]
end

subgraph group_algorithms["Algorithms"]
  node_graphs["Graphs"]
  node_sorting["Sorting"]
end

node_learner(("Learner"))

node_learner -->|"runs main"| node_arrays

click node_arrays "https://github.com/mahnoorahmed-dev/dsa-java/blob/main/arrays/ArrayUtils.java"
click node_linkedlists "https://github.com/mahnoorahmed-dev/dsa-java/tree/main/linkedlists"
click node_stacksqueues "https://github.com/mahnoorahmed-dev/dsa-java/tree/main/stacks-queues"
click node_trees "https://github.com/mahnoorahmed-dev/dsa-java/tree/main/trees"
click node_hashmaps "https://github.com/mahnoorahmed-dev/dsa-java/tree/main/hashmaps"
click node_graphs "https://github.com/mahnoorahmed-dev/dsa-java/tree/main/graphs"
click node_sorting "https://github.com/mahnoorahmed-dev/dsa-java/tree/main/sorting"

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_arrays toneBlue
class node_linkedlists,node_stacksqueues,node_trees,node_hashmaps toneAmber
class node_graphs,node_sorting toneMint
class node_learner toneIndigo
```

## Components

### Foundations

- [Array Utilities](https://github.com/mahnoorahmed-dev/dsa-java/blob/main/arrays/ArrayUtils.java): `arrays/ArrayUtils.java`

### Data Structures

- [Linked Lists](https://github.com/mahnoorahmed-dev/dsa-java/tree/main/linkedlists): `linkedlists`
- [Stacks & Queues](https://github.com/mahnoorahmed-dev/dsa-java/tree/main/stacks-queues): `stacks-queues`
- [Trees](https://github.com/mahnoorahmed-dev/dsa-java/tree/main/trees): `trees`
- [Hash Maps](https://github.com/mahnoorahmed-dev/dsa-java/tree/main/hashmaps): `hashmaps`

### Algorithms

- [Graphs](https://github.com/mahnoorahmed-dev/dsa-java/tree/main/graphs): `graphs`
- [Sorting](https://github.com/mahnoorahmed-dev/dsa-java/tree/main/sorting): `sorting`

### Other components

- **Learner**

## Connections

- Learner → Array Utilities: runs main
