# omchopkar/leetcode-submissions architecture

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

- Interactive diagram: https://gitdiagram.com/omchopkar/leetcode-submissions
- Repository: https://github.com/omchopkar/leetcode-submissions

## Overview

This repository is a collection of independent Python LeetCode submissions, not a single application: each solution accepts problem inputs and computes a result, with no shared runtime or cross-solution calls shown. The README organizes submissions by LeetCode topics, while the tree organizes each answer in its own problem directory. The graph groups representative solutions by algorithm domain. Because no common invocation or judge integration is evidenced in the excerpts, it does not imply connections between solutions.

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_arrays["Array algorithms"]
  node_binary_search["Binary search"]
  node_sliding_window["Sliding window"]
  node_rain_water["Trapping rain water"]
  node_sorted_squares["Sorted squares"]
  node_two_sum["Two sum<br/>[0001-two-sum.py]"]
  node_median_arrays["Median of arrays"]
end

subgraph group_strings["String algorithms"]
  node_valid_number["Number validation"]
  node_roman_convert["Roman conversion"]
  node_decode_string["Decode string"]
  node_anagram["Anagram check"]
  node_valid_palindrome["Palindrome check"]
end

subgraph group_numbers["Numeric algorithms"]
  node_integer_division["Integer division"]
  node_binary_add["Binary addition<br/>[0067-add-binary.py]"]
end

subgraph group_structures["Data structures"]
  node_min_stack["Minimum stack<br/>[0155-min-stack.py]"]
end

click node_binary_search "https://github.com/omchopkar/leetcode-submissions/blob/main/0704-binary-search/0704-binary-search.py"
click node_sliding_window "https://github.com/omchopkar/leetcode-submissions/blob/main/1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold/1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold.py"
click node_rain_water "https://github.com/omchopkar/leetcode-submissions/blob/main/0042-trapping-rain-water/0042-trapping-rain-water.py"
click node_sorted_squares "https://github.com/omchopkar/leetcode-submissions/blob/main/0977-squares-of-a-sorted-array/0977-squares-of-a-sorted-array.py"
click node_two_sum "https://github.com/omchopkar/leetcode-submissions/blob/main/0001-two-sum/0001-two-sum.py"
click node_median_arrays "https://github.com/omchopkar/leetcode-submissions/blob/main/0004-median-of-two-sorted-arrays/0004-median-of-two-sorted-arrays.py"
click node_valid_number "https://github.com/omchopkar/leetcode-submissions/blob/main/0065-valid-number/0065-valid-number.py"
click node_roman_convert "https://github.com/omchopkar/leetcode-submissions/blob/main/0013-roman-to-integer/0013-roman-to-integer.py"
click node_decode_string "https://github.com/omchopkar/leetcode-submissions/blob/main/0394-decode-string/0394-decode-string.py"
click node_anagram "https://github.com/omchopkar/leetcode-submissions/blob/main/0242-valid-anagram/0242-valid-anagram.py"
click node_valid_palindrome "https://github.com/omchopkar/leetcode-submissions/blob/main/0680-valid-palindrome-ii/0680-valid-palindrome-ii.py"
click node_integer_division "https://github.com/omchopkar/leetcode-submissions/blob/main/0029-divide-two-integers/0029-divide-two-integers.py"
click node_binary_add "https://github.com/omchopkar/leetcode-submissions/blob/main/0067-add-binary/0067-add-binary.py"
click node_min_stack "https://github.com/omchopkar/leetcode-submissions/blob/main/0155-min-stack/0155-min-stack.py"

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_binary_search,node_sliding_window,node_rain_water,node_sorted_squares,node_two_sum,node_median_arrays toneBlue
class node_valid_number,node_roman_convert,node_decode_string,node_anagram,node_valid_palindrome toneAmber
class node_integer_division,node_binary_add toneMint
class node_min_stack toneRose
```

## Components

### Array algorithms

- [Binary search](https://github.com/omchopkar/leetcode-submissions/blob/main/0704-binary-search/0704-binary-search.py): `0704-binary-search/0704-binary-search.py`
- [Sliding window](https://github.com/omchopkar/leetcode-submissions/blob/main/1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold/1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold.py): `1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold/1343-number-of-sub-arrays-of-size-k-and-average-greater-than-or-equal-to-threshold.py`
- [Trapping rain water](https://github.com/omchopkar/leetcode-submissions/blob/main/0042-trapping-rain-water/0042-trapping-rain-water.py): `0042-trapping-rain-water/0042-trapping-rain-water.py`
- [Sorted squares](https://github.com/omchopkar/leetcode-submissions/blob/main/0977-squares-of-a-sorted-array/0977-squares-of-a-sorted-array.py): `0977-squares-of-a-sorted-array/0977-squares-of-a-sorted-array.py`
- [Two sum](https://github.com/omchopkar/leetcode-submissions/blob/main/0001-two-sum/0001-two-sum.py): `0001-two-sum/0001-two-sum.py`
- [Median of arrays](https://github.com/omchopkar/leetcode-submissions/blob/main/0004-median-of-two-sorted-arrays/0004-median-of-two-sorted-arrays.py): `0004-median-of-two-sorted-arrays/0004-median-of-two-sorted-arrays.py`

### String algorithms

- [Number validation](https://github.com/omchopkar/leetcode-submissions/blob/main/0065-valid-number/0065-valid-number.py): `0065-valid-number/0065-valid-number.py`
- [Roman conversion](https://github.com/omchopkar/leetcode-submissions/blob/main/0013-roman-to-integer/0013-roman-to-integer.py): `0013-roman-to-integer/0013-roman-to-integer.py`
- [Decode string](https://github.com/omchopkar/leetcode-submissions/blob/main/0394-decode-string/0394-decode-string.py): `0394-decode-string/0394-decode-string.py`
- [Anagram check](https://github.com/omchopkar/leetcode-submissions/blob/main/0242-valid-anagram/0242-valid-anagram.py): `0242-valid-anagram/0242-valid-anagram.py`
- [Palindrome check](https://github.com/omchopkar/leetcode-submissions/blob/main/0680-valid-palindrome-ii/0680-valid-palindrome-ii.py): `0680-valid-palindrome-ii/0680-valid-palindrome-ii.py`

### Numeric algorithms

- [Integer division](https://github.com/omchopkar/leetcode-submissions/blob/main/0029-divide-two-integers/0029-divide-two-integers.py): `0029-divide-two-integers/0029-divide-two-integers.py`
- [Binary addition](https://github.com/omchopkar/leetcode-submissions/blob/main/0067-add-binary/0067-add-binary.py): `0067-add-binary/0067-add-binary.py`

### Data structures

- [Minimum stack](https://github.com/omchopkar/leetcode-submissions/blob/main/0155-min-stack/0155-min-stack.py): `0155-min-stack/0155-min-stack.py`
