Dynamic Programming • Data Structures & Algorithms
Welcome to my programming journey! This repository contains my solutions and implementations across various online judges and problem-solving platforms.
| Platform | Problems Solved | Current Rating |
|---|---|---|
| Codeforces | 0 | Unrated |
| CodeChef | 23 | 0 |
| LeetCode | 9 | 0 |
| HackerRank | 149 | 0 |
de-sacramento/
├── python/
| ├── DSA/
| ├── leetcode/
│ │ └── README.md
| ├── codechef/
│ │ └── README.md
│ └── hackerrank/
│ ├── algorithms/
│ ├── data-structures/
│ ├── mathematics/
│ └── README.md
├── cpp/
├── go/
└── README.md
- Arrays & Strings
- Linked Lists
- Stacks & Queues
- Trees & Binary Search Trees
- Heaps & Priority Queues
- Hash Tables
- Graphs
- Tries
- Segment Trees
- Fenwick Trees
- Two Pointers
- Sliding Window
- Binary Search
- Sorting Algorithms
- Graph Algorithms (DFS, BFS, Dijkstra, etc.)
- Greedy Algorithms
- Backtracking
- Divide & Conquer
- 1D DP
- 2D DP
- Knapsack Problems
- Longest Common Subsequence
- Palindrome Problems
- Tree DP
- Digit DP
- Bitmask DP
- Solve 100 problems on LeetCode
- Reach Specialist on Codeforces (1400+ rating)
- Complete 50 GeeksforGeeks problems
- Master basic DP patterns
- Solve 500+ problems across all platforms
- Reach Expert on Codeforces (1600+ rating)
- Complete LeetCode 75 and Blind 75
- Participate in weekly contests regularly
- Python 3 - For quick prototyping and certain algorithms
- C++ 17/20 - Primary language for competitive programming
- GoLang - Transitioning into this language
Each solution includes:
- Problem statement link
- Approach explanation
- Time & Space complexity
- Key insights or learnings
- Alternative approaches (if any)
Example:
/*
Problem: [Problem Name]
Link: [Problem URL]
Difficulty: [Easy/Medium/Hard]
Topic: [Arrays, DP, Graphs, etc.]
Approach:
- Brief explanation of the solution approach
Time Complexity: O(n)
Space Complexity: O(1)
Key Insights:
- Important observations or patterns learned
*/- "Competitive Programming 4" by Steven & Felix Halim
- "Introduction to Algorithms" by CLRS
- "Elements of Programming Interviews"
- Errichto
- Colin Galen
- William Lin
This is a personal learning repository, but feel free to:
- Suggest better solutions or optimizations
- Point out bugs or improvements
- Share alternative approaches
"The only way to learn a new programming language is by writing programs in it." - Dennis Ritchie
Happy Coding! 🎉