This repository is a personal project where I track my progress through Striver's A-Z Data Structures and Algorithms (DSA) sheet. By making my solutions public, I hope to contribute to the community and help others who are on the same learning journey.
Striver's A-Z DSA sheet is an excellent resource for anyone looking to build a solid foundation in Data Structures and Algorithms. This repository serves as my personal logbook, documenting each problem I solve with my code implementations. The goal is to maintain transparency in my learning process and to potentially help others who are following a similar path.
I will update this section regularly as I complete more problems:
Topic | Subtopic | Problems Solved | Total Problems | Progress | Status |
---|---|---|---|---|---|
Basics [31/31] | Lec 1: Basics of C++ | 9 | 9 | 100% | ✅ Completed |
Lec 2: Logic building | 1 | 1 | 100% | ✅ Completed | |
--->Patterns | 22 | 22 | 100% | ✅ Completed | |
Lec 3: C++ STL | 2 | 2 | 100% | ✅ Completed | |
Lec 4: Basic Maths | 7 | 7 | 100% | ✅ Completed | |
Lec 5: Basic recursion | 9 | 9 | 100% | ✅ Completed | |
Lec 6: Basic hashing | 3 | 3 | 100% | ✅ Completed | |
Sorting [7/7] | Lec 1: Sorting I | 3 | 3 | 100% | ✅ Completed |
Lec 2: Sorting II | 4 | 4 | 100% | ✅ Completed | |
Arrays [40/40] | Lec 1: Easy | 14 | 14 | 100% | ✅ Completed |
Lec 2: Medium | 14 | 14 | 100% | ✅ Completed | |
Lec 3: Hard | 12 | 12 | 100% | ✅ Completed | |
Binary Search [32/32] | Lec 1: BS on 1D arrays | 13 | 13 | 100% | ✅ Completed |
Lec 2: BS on answers | 14 | 14 | 100% | ✅ Completed | |
Lec 3: BS on 2D arrays | 5 | 5 | 100% | ✅ Completed | |
Strings[Basic and Medium] [15/15] | Lec 1: Basic String problems | 7 | 7 | 100% | ✅ Completed |
Lec 2: Medium String problems | 8 | 8 | 100% | ✅ Completed | |
Linked Lists [31/31] | Lec 1: 1D Linked List | 5 | 5 | 100% | ✅ Completed |
Lec 2: Doubly Linked List | 4 | 4 | 100% | ✅ Completed | |
Lec 3: Medium problems of LL | 15 | 15 | 100% | ✅ Completed | |
Lec 4: Medium problems of DLL | 3 | 3 | 100% | ✅ Completed | |
Lec 5: Hard problems of LL | 4 | 4 | 100% | ✅ Completed | |
Recursion [25/25] | Lec 1: Recursion basics | 5 | 5 | 100% | ✅ Completed |
Lec 2: Subsequences pattern | 12 | 12 | 100% | ✅ Completed | |
Lec 3: Hard problems | 8 | 8 | 100% | ✅ Completed | |
Bit Manipulation [0/18] | Lec 1: Learning | 0 | 8 | 00% | 🟠 In Progress |
Lec 2: Interview Problems | 0 | 5 | 00% | 🟠 In Progress | |
Lec 3: Advanced maths | 0 | 5 | 00% | 🔴 Not Started | |
Stacks and Queues [0/30] | Lec 1: Learning | 0 | 8 | 00% | 🔴 Not Started |
Lec 2: Prefix, Infix, PostFix Conversion Problems | 0 | 6 | 00% | 🔴 Not Started | |
Lec 3: Monotonic Stack/Queue Problems [VVV. Imp] | 0 | 11 | 00% | 🔴 Not Started | |
Lec 4: Implementation Problems | 0 | 5 | 00% | 🔴 Not Started | |
Sliding Window & Two Pointer Combined Problems [0/12] | Lec 1: Medium Problems | 0 | 8 | 00% | 🔴 Not Started |
Lec 2: Hard Problems | 0 | 4 | 00% | 🔴 Not Started | |
Heaps [0/17] | Lec 1: Learning | 0 | 4 | 00% | 🔴 Not Started |
Lec 2: Medium Problems | 0 | 7 | 00% | 🔴 Not Started | |
Lec 3: Hard Problems | 0 | 6 | 00% | 🔴 Not Started | |
Greedy Algorithms [0/16] | Lec 1: Easy problems | 0 | 5 | 00% | 🔴 Not Started |
Lec 2: Medium / Hard | 0 | 11 | 00% | 🔴 Not Started | |
Binary Trees [0/39] | Lec 1: Transversals | 0 | 13 | 00% | 🔴 Not Started |
Lec 2: Medium Problems | 0 | 12 | 00% | 🔴 Not Started | |
Lec 3: Hard Problems | 0 | 14 | 00% | 🔴 Not Started | |
Binary Search Trees [0/16] | Lec 1: Concepts | 0 | 3 | 00% | 🔴 Not Started |
Lec 2: Practice Problems | 0 | 13 | 00% | 🔴 Not Started | |
Graphs [0/54] | Lec 1: Learning | 0 | 6 | 00% | 🔴 Not Started |
Lec 2: Problems on BFS/DFS | 0 | 14 | 00% | 🔴 Not Started | |
Lec 3: Topo Sort and Problems | 0 | 7 | 00% | 🔴 Not Started | |
Lec 4: Shortest Path Algorithms and Problems | 0 | 13 | 00% | 🔴 Not Started | |
Lec 5: Minimum Spanning Tree/ Disjoint set and problems | 0 | 11 | 00% | 🔴 Not Started | |
Lec 6: Other Algorithms | 0 | 3 | 00% | 🔴 Not Started | |
Dynamic Programming [0/56] | Lec 1: Introduction to DP | 0 | 1 | 00% | 🔴 Not Started |
Lec 2: 1D DP | 0 | 5 | 00% | 🔴 Not Started | |
Lec 3: 2D/3D DP and DP on grids | 0 | 7 | 00% | 🔴 Not Started | |
Lec 4: DP on Subsequences | 0 | 11 | 00% | 🔴 Not Started | |
Lec 5: DP on Strings | 0 | 10 | 00% | 🔴 Not Started | |
Lec 6: DP on Stocks | 0 | 6 | 00% | 🔴 Not Started | |
Lec 7: DP on LIS | 0 | 7 | 00% | 🔴 Not Started | |
Lec 8: MCM DP/ Partition DP | 0 | 7 | 00% | 🔴 Not Started | |
Lec 9: DP on Squares | 0 | 2 | 00% | 🔴 Not Started | |
Tries [0/7] | Lec 1: Theory | 0 | 1 | 00% | 🔴 Not Started |
Lec 2: Problems | 0 | 6 | 00% | 🔴 Not Started | |
Strings [0/9] | Lec 1: Hard Problems | 0 | 9 | 00% | 🔴 Not Started |
The repository is organized by topics, with each topic containing directories for my personal solutions. Each directory includes:
-
Solution: My code implementation of the problem.
-
Additional Notes: Any insights or comments I found useful while solving the problem.
.
├── Day 1
│ ├── Lec 1
| ├── Problem1.cpp
│ ├── Problem2.cpp
│ └── ...
│ ├── Lec 2
| ├── Problem1.cpp
│ ├── Problem2.cpp
│ └── ...
├── Day 2
│ ├── Lec 3
| ├── Problem1.cpp
│ ├── Problem2.cpp
│ └── ...
└── ...
Although this repository is primarily for tracking my own progress, I welcome any suggestions, improvements, or discussions. Feel free to open an issue or submit a pull request if you find something that can be improved.
This project is licensed under the MIT License - see the LICENSE file for details.
- Striver: For creating the A-Z DSA sheet and providing a structured path for DSA practice.
- The open-source community for continuous learning and collaboration.