👋 Hi, I'm Robert Nguyen.
👨💻 Python & Java Developer working towards Remote opportunities with potential relocation.
This repository showcases clean, readable Python solutions to selected LeetCode problems, structured with test cases and organized for consistent daily practice and interview preparation.
- Practicing algorithm and problem-solving with clean, maintainable code.
- Improving test-driven development mindset with
pytest
. - Building a consistent daily habit to sharpen technical problem-solving skills.
- Preparing for global remote opportunities in Python and backend engineering roles.
Below are real-time progress and build status for this repo.
🎯 Target:
- 50 Easy
- 50 Medium
- 50 Hard
✅ Completed Problems:
- Easy: 30 / 50 ✅
- Medium: 0 / 50 🚧
- Hard: 0 / 50 🚧
No. | ID | Title | Difficulty | Solution | Time | Space |
---|---|---|---|---|---|---|
1 | 0001 | Two Sum | Easy | Python | O(n) | O(n) |
2 | 0013 | Roman To Int | Easy | Python | O(n) | O(1) |
3 | 0020 | Valid Parentheses | Easy | Python | O(n) | O(n) |
4 | 0021 | Merge Two Sorted Lists | Easy | Python | O(m + n) | O(1) |
5 | 0026 | Remove Duplicates Sorted Array | Easy | Python | O(n) | O(1) |
6 | 0070 | Climbing Stairs | Easy | Python | O(n) | O(1) |
7 | 0088 | Merge Sorted Array | Easy | Python | O(m + n) | O(1) |
8 | 0094 | Binary Tree Inorder Traversal | Easy | Python | O(n) | O(n) |
9 | 0101 | Symmetric Tree | Easy | Python | O(n) | O(h) |
10 | 0104 | Maximum Depth Binary Tree | Easy | Python | O(n) | O(h) |
11 | 0112 | Path Sum | Easy | Python | O(n) | O(h) |
12 | 0121 | Best Time To Buy And Sell Stock | Easy | Python | O(n) | O(1) |
13 | 0125 | Valid Palindrome | Easy | Python | O(n) | O(n) |
14 | 0136 | Single Number | Easy | Python | O(n) | O(1) |
15 | 0141 | Linked List Cycle | Easy | Python | O(n) | O(1) |
16 | 0145 | Binary Tree Postorder | Easy | Python | O(n) | O(n) |
17 | 0160 | Intersection Of Two Linked Lists | Easy | Python | O(m + n) | O(1) |
18 | 0169 | Majority Element | Easy | Python | O(n) | O(1) |
19 | 0171 | Excel Column Number | Easy | Python | O(n) | O(1) |
20 | 0191 | Number Of 1 Bits | Easy | Python | O(k) | O(1) |
21 | 0202 | Happy Number | Easy | Python | O(log n) | O(1) |
22 | 0206 | Reverse Linked List | Easy | Python | O(n) | O(1) |
23 | 0217 | Contains Duplicate | Easy | Python | O(n) | O(n) |
24 | 0234 | Palindrome Linked List | Easy | Python | O(n) | O(1) |
25 | 0242 | Valid Anagram | Easy | Python | O(n) | O(1) |
26 | 0258 | Add Digits | Easy | Python | O(1) | O(1) |
27 | 0268 | Missing Number | Easy | Python | O(n) | O(1) |
28 | 0278 | First Bad Version | Easy | Python | O(log n) | O(1) |
29 | 0283 | Move Zeroes | Easy | Python | O(n) | O(1) |
30 | 0303 | Range Sum Query Immutable | Easy | Python | O(n) | O(n) |
This repository is updated regularly to track my algorithm practice, clean coding skills, and preparation for remote Python/backend engineering roles.
- Problems are organized by difficulty:
easy/
medium/
hard/
- Each problem has its own folder:
easy/0001_two_sum/ ├── two_sum.py └── test_two_sum.py
- Each folder contains:
- A clean Python solution.
- Python tests for validation and practice.
To set up the project locally and install required dependencies:
git clone https://github.com/robert-nguyen-global-dev/leetcode-python-showcase.git
cd leetcode-python-showcase
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
✅ Note: It's recommended to use a virtual environment to isolate dependencies and ensure consistent behavior.
🚀 To run all tests:
pytest -v
🚀 To test a specific problem:
pytest -v easy/0001_two_sum
📫 Email: robert.nguyen.global.dev@gmail.com
🔗 GitHub: robert-nguyen-global-dev
💼 LinkedIn: linkedin.com/in/robert-nguyen-global-dev
This project is licensed under the MIT License.
Feel free to use and share for learning purposes.