A personal learning journal for tracking algorithm problem-solving progress. Includes solutions, failed attempts analysis, and a retry list for spaced repetition practice.
This repository serves as a structured system for mastering algorithms and data structures through three key components:
- Solutions Diary β Optimal solutions with time/space complexity analysis
- Mistakes Diary β Failed attempts with root cause analysis
- Retry List β Problems to revisit using spaced repetition
algorithm-diary/
βββ retry-list/
β βββ README.md # Problems to revisit (remove when solved)
βββ problems/
β βββ array/
β β βββ two-sum/
β β βββ solution.md # Optimal solution + explanation
β β βββ fails.md # Failed attempts + analysis
β βββ linked-list/
β β βββ reverse-list/
β β βββ merge-lists/
β βββ tree/
β βββ graph/
β βββ dynamic-programming/
β βββ binary-search/
β βββ ...
βββ README.md
Each solution.md follows this structure:
# Problem Name
[LeetCode Link](https://leetcode.com/problems/...)
## Solution
\`\`\`python
# Code here
\`\`\`
## Complexity
**Time:** `O(n)` β explanation
**Space:** `O(n)` β explanation
## Approach
Step-by-step explanation of the solution logic.Each fails.md documents failed attempts:
# Failed Attempts
## Attempt 1 β TLE
\`\`\`python
# Failed code
\`\`\`
**What went wrong:** Used nested loops O(nΒ²) instead of hashmap O(n)
## Attempt 2 β Wrong Answer
\`\`\`python
# Failed code
\`\`\`
**What went wrong:** Off-by-one error in boundary checkProblems that couldn't be solved within 30 minutes go to retry-list/README.md
Spaced Repetition Schedule:
- First retry: 1-2 days after initial attempt
- Second retry: 1-2 weeks later
- Remove from list when solved confidently
- Array
- String
- Linked List
- Stack / Queue
- Tree / Binary Tree
- Graph
- Hash Table
- Binary Search
- Two Pointers
- Sliding Window
- Dynamic Programming
- Greedy
- Backtracking
- Heap / Priority Queue
- Track progress β See improvement over time
- Learn from mistakes β Documenting failures prevents repeating them
- Build a personal cheatsheet β Quick reference before interviews
- Spaced repetition β Retry list ensures long-term retention
This project is licensed under the MIT License.