GitHub - onixlas/algorithmic-patterns: Leetcode 75 study plan tasks
This repository contains curated solutions to a subset of common algorithmic problems, primarily based on the LeetCode 75 study plan.
The purpose of this repository is to maintain algorithmic fluency and document common problem-solving patterns that frequently appear in technical interviews and real-world engineering tasks.
This is not intended as a competitive programming showcase, but rather as a structured reference for fundamental data structures and algorithms.
๐ Scope
The problems cover a range of foundational algorithmic topics, including:
- Arrays and strings
- Two pointers
- Sliding window
- Prefix sums
- Hash-based data structures
- Stack and queue
- Basic graph and traversal patterns
Each solution focuses on:
- clarity and readability
- explicit time and space complexity
- well-known algorithmic patterns rather than clever tricks
๐ Repository Structure
.
โโโ pyproject.toml # Project configuration
โโโ src/
โ โโโ array_string/ # Array and string manipulation patterns
โ โโโ hashmap_set/ # Hash map and set based problems
โ โโโ prefix_sum/ # Prefix sum techniques
โ โโโ sliding_window/ # Sliding window pattern
โ โโโ two_pointers/ # Two pointers pattern
โ โโโ stack/ # Stack-based problems
โ โโโ queue/ # Queue-based problems
โ
โ # Each submodule follows a consistent structure:
โ # <problem_name>/
โ # โโโ __init__.py
โ # โโโ solution.py
โ
โโโ tests/ # Tests for all problems
๐ง Design principles
- Clean, readable Python code
- Emphasis on algorithmic patterns
- Avoidance of overly compact or non-obvious solutions
- Explicit handling of edge cases
๐ Language
- Python
๐ Notes
This repository complements my primary work in machine learning and LLM-based systems, where a solid understanding of algorithms and data structures remains essential for building reliable and scalable production systems.