py-question is a collection of my personal solutions to various coding problems from platforms like LeetCode, HackerRank, Codeforces, and others. Each problem is solved in Python, and the solutions are written in my unique style.
This repository serves as a log of my journey in problem-solving and algorithm development. It includes solutions to problems of varying difficulty (easy, medium, hard) across several domains such as:
- Algorithms
- Data Structures
- Mathematics
- Dynamic Programming
- Graphs
- String Manipulation
- And more...
Each problem has its own folder, and the code is written in Python with clear documentation and explanations when necessary. This is a work in progress, and I aim to continually improve the solutions and optimize the performance of the code.
- Platform diversity: Problems from LeetCode, HackerRank, and other platforms.
- Unique approach: Solutions provided with my personal method and thought process.
- Well-documented: Each solution comes with comments explaining the logic.
- Organized structure: Files and folders are structured in an easy-to-navigate format.
py-question/
│
├── LeetCode/
│ ├── Problem1.py
│ ├── Problem2.py
│ └── ...
│
├── HackerRank/
│ ├── Problem1.py
│ ├── Problem2.py
│ └── ...
│
└── Codeforces/
├── Problem1.py
├── Problem2.py
└── ...
Each folder contains problems solved from that specific platform. Each Python file is named after the problem or has a description of what the problem entails.
-
Clone the repository:
git clone https://github.com/sinanazem/py-question.git
-
Navigate to the folder of the platform (e.g.,
LeetCode
,HackerRank
) and find the Python file corresponding to the problem you'd like to review. -
Run the code in Python:
python Problem1.py
Each script is standalone and can be executed directly.
- Python 3.x
- Any additional libraries used will be mentioned in the respective files or added to the requirements file in the future.
In this repository, I focus on:
- Breaking down complex problems into smaller, manageable tasks.
- Writing readable and maintainable Python code.
- Improving time and space complexity.
- Learning new algorithms and data structures.