Sitelet https://github.com/tusharjamunkar/DSA
Skip to content

Latest commit

Β 

History

37 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Data Structures & Algorithms (DSA)

Curated solutions to LeetCode problems, algorithm design patterns, and computer science lab assignments.


πŸ“Š Daily LeetCode & Problem Solving Tracker

# Problem Topic Difficulty Solution Time Space Date Added
0001 Two Sum Arrays & Hashing Easy Python $O(n)$ $O(n)$ 2026-09-08
0217 Contains Duplicate Arrays & Hashing Easy Python $O(n)$ $O(n)$ 2026-09-09
0242 Valid Anagram Arrays & Hashing Easy Python $O(n)$ $O(1)$ 2026-09-10
0049 Group Anagrams Arrays & Hashing Medium Python $O(N \cdot K)$ $O(N \cdot K)$ 2026-09-11
0347 Top K Frequent Elements Arrays & Hashing Medium Python $O(n)$ $O(n)$ 2026-09-12
0238 Product of Array Except Self Arrays & Hashing Medium Python $O(n)$ $O(1)$ 2026-09-12
0036 Valid Sudoku Arrays & Hashing Medium Python $O(1)$ $O(1)$ 2026-09-13
0128 Longest Consecutive Sequence Arrays & Hashing Medium Python $O(n)$ $O(n)$ 2026-09-13
0125 Valid Palindrome Two Pointers Easy Python $O(n)$ $O(1)$ 2026-09-15
0167 Two Sum II - Input Array Is Sorted Two Pointers Medium Python $O(n)$ $O(1)$ 2026-09-15
0011 Container With Most Water Two Pointers Medium Python $O(n)$ $O(1)$ 2026-09-17
0015 3Sum Two Pointers Medium Python $O(n^2)$ $O(1)$ 2026-09-17
0042 Trapping Rain Water Two Pointers Hard Python $O(n)$ $O(1)$ 2026-09-18
0121 Best Time to Buy and Sell Stock Sliding Window Easy Python $O(n)$ $O(1)$ 2026-09-18
0003 Longest Substring Without Repeating Characters Sliding Window Medium Python $O(n)$ $O(min(m, n))$ 2026-09-19
0424 Longest Repeating Character Replacement Sliding Window Medium Python $O(n)$ $O(1)$ 2026-09-19
0567 Permutation in String Sliding Window Medium Python $O(n)$ $O(1)$ 2026-09-19
0076 Minimum Window Substring Sliding Window Hard Python $O(m + n)$ $O(1)$ 2026-09-19
0239 Sliding Window Maximum Sliding Window Hard Python $O(n)$ $O(k)$ 2026-09-19
0020 Valid Parentheses Stack Easy Python $O(n)$ $O(n)$ 2026-09-20
0155 Min Stack Stack Medium Python $O(1)$ $O(n)$ 2026-09-20
0150 Evaluate Reverse Polish Notation Stack Medium Python $O(n)$ $O(n)$ 2026-09-20
0022 Generate Parentheses Stack Medium Python $O(\frac{4^n}{\sqrt{n}})$ $O(n)$ 2026-09-21
0739 Daily Temperatures Stack Medium Python $O(n)$ $O(n)$ 2026-09-21
0853 Car Fleet Stack Medium Python $O(n \log n)$ $O(n)$ 2026-09-22
0084 Largest Rectangle in Histogram Stack Hard Python $O(n)$ $O(n)$ 2026-09-22
0704 Binary Search Binary Search Easy Python $O(\log n)$ $O(1)$ 2026-09-23
0074 Search a 2D Matrix Binary Search Medium Python $O(\log(m \cdot n))$ $O(1)$ 2026-09-23
0875 Koko Eating Bananas Binary Search Medium Python $O(n \cdot \log(\max(P)))$ $O(1)$ 2026-09-23
0153 Find Minimum in Rotated Sorted Array Binary Search Medium Python $O(\log n)$ $O(1)$ 2026-09-24
0033 Search in Rotated Sorted Array Binary Search Medium Python $O(\log n)$ $O(1)$ 2026-09-24
0981 Time Based Key-Value Store Binary Search Medium Python $O(1)$ set / $O(\log m)$ get $O(n)$ 2026-09-24
0004 Median of Two Sorted Arrays Binary Search Hard Python $O(\log(\min(m, n)))$ $O(1)$ 2026-09-25
0206 Reverse Linked List Linked List Easy Python $O(n)$ $O(1)$ 2026-09-25
0021 Merge Two Sorted Lists Linked List Easy Python $O(n + m)$ $O(1)$ 2026-09-25
0143 Reorder List Linked List Medium Python $O(n)$ $O(1)$ 2026-09-26
0019 Remove Nth Node From End of List Linked List Medium Python $O(n)$ $O(1)$ 2026-09-26
0138 Copy List with Random Pointer Linked List Medium Python $O(n)$ $O(1)$ 2026-09-26
0002 Add Two Numbers Linked List Medium Python $O(\max(m, n))$ $O(\max(m, n))$ 2026-09-27
0141 Linked List Cycle Linked List Easy Python $O(n)$ $O(1)$ 2026-09-27
0287 Find the Duplicate Number Linked List Medium Python $O(n)$ $O(1)$ 2026-09-27
0146 LRU Cache Linked List Medium Python $O(1)$ $O(\text{capacity})$ 2026-09-28
0023 Merge k Sorted Lists Linked List Hard Python $O(N \log k)$ $O(1)$ 2026-09-28
0025 Reverse Nodes in k-Group Linked List Hard Python $O(n)$ $O(1)$ 2026-09-28
0226 Invert Binary Tree Trees Easy Python $O(n)$ $O(h)$ 2026-09-29
0104 Maximum Depth of Binary Tree Trees Easy Python $O(n)$ $O(h)$ 2026-09-29
0543 Diameter of Binary Tree Trees Easy Python $O(n)$ $O(h)$ 2026-09-29
0110 Balanced Binary Tree Trees Easy Python $O(n)$ $O(h)$ 2026-09-30
0100 Same Tree Trees Easy Python $O(\min(n, m))$ $O(\min(h_p, h_q))$ 2026-09-30
0572 Subtree of Another Tree Trees Easy Python $O(m \cdot n)$ $O(h)$ 2026-09-30
0235 Lowest Common Ancestor of a Binary Search Tree Trees Medium Python $O(h)$ $O(1)$ 2026-10-01
0102 Binary Tree Level Order Traversal Trees Medium Python $O(n)$ $O(w)$ 2026-10-01
0199 Binary Tree Right Side View Trees Medium Python $O(n)$ $O(w)$ 2026-10-01
1448 Count Good Nodes in Binary Tree Trees Medium Python $O(n)$ $O(h)$ 2026-10-04
0098 Validate Binary Search Tree Trees Medium Python $O(n)$ $O(h)$ 2026-10-04
0230 Kth Smallest Element in a BST Trees Medium Python $O(h + k)$ $O(h)$ 2026-10-04

πŸ“š Lab Assignments

  • Lab 1 β€” Library Borrowing Frequency & Counter Analytics
  • Lab 2 β€” Array Operations & Search Procedures
  • Lab 3 β€” Stack Implementation & Expression Evaluation
  • Lab 4 β€” Queue Architectures & Buffer Management
  • Lab 5 β€” Linked List Manipulation & Traversal
  • Lab 6 β€” Binary Search Trees (BST) & In-order Walk
  • Lab 8 β€” Graph Representation & Traversal (BFS/DFS)

πŸ› οΈ How to Run Tests

Run individual problem solutions directly with Python:

python leetcode/0001_two_sum.py

Or execute all tests using pytest:

pytest leetcode/

About

DSA lab assignment

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages