Byte Depth
© 2026 ByteDepth. All rights reserved.Built with care for curious engineers.

All Topics

Practice342 articles

✕ Clear filter

Low Level Design

Design an Amazon Locker System

A complete low-level design walkthrough for Amazon Locker — from requirements clarification to token-based access, compartment management, and expiry enforcement in Java.

Easy·Sep 18, 2026·12 min read
Low Level DesignOOPsSOLID

DSA

Task Scheduler

Three approaches — Math formula O(n), Greedy Max-Heap O(n log k), Sorted Array O(n). Find minimum CPU intervals with cooldown constraint.

Medium·Sep 16, 2026
DSAHeapPriority Queue🏢 Amazon

DSA

Sort Characters By Frequency

Max-heap on character frequency. Time O(n + d log d), Space O(d) where d = distinct characters.

Medium·Sep 16, 2026
DSAHeapPriority Queue🏢 Amazon

DSA

K Closest Points to Origin

Max-heap of size k — evict the farthest point on each insert. Time O(n log k), Space O(k).

Medium·Sep 16, 2026
DSAHeapPriority Queue🏢 Amazon

DSA

Max Area of Island

DFS flood-fill to find the largest connected island. Time O(m×n), Space O(m×n).

Medium·Sep 16, 2026
DSAGraphsBFS🏢 Amazon

DSA

Peak Index in a Mountain Array

Binary Search on the mountain's slope direction. O(log n) time, O(1) space.

Medium·Sep 16, 2026
DSABinary SearchLeetCode🏢 Amazon

DSA

Majority Element II

Extended Boyer-Moore Voting — find all elements appearing more than ⌊n/3⌋ times. Time O(n), Space O(1).

Medium·Sep 15, 2026
DSAArraysLeetCode🏢 Amazon

DSA

Odd Even Linked List

In-place pointer weaving — odd indices first, then even. Optimal — Time O(n), Space O(1).

Medium·Sep 15, 2026
DSALinked ListLeetCode🏢 Amazon

DSA

Path Sum

Check if a root-to-leaf path sums to a target. Optimal — Time O(n), Space O(h).

Easy·Sep 12, 2026
DSALeetCodePractice

DSA

Remove Duplicates from Sorted Array II

Keep each unique element at most twice in-place. Optimal — Time O(n), Space O(1).

Medium·Sep 12, 2026
DSAArraysLeetCode🏢 Amazon

DSA

Generate Parentheses

Generate all combinations of well-formed parentheses using backtracking. Optimal — Time O(4ⁿ/√n), Space O(n).

Medium·Sep 11, 2026·6 min read
DSAStringsRecursion🏢 Amazon

DSA

Rotate List

Covers: Naive, Optimal (circular link). Optimal — Time O(n), Space O(1).

Medium·Sep 11, 2026
DSALinked ListLeetCode🏢 Amazon

DSA

Zigzag Conversion

Simulate row-by-row traversal with direction flip. Optimal — Time O(n), Space O(n).

Medium·Sep 9, 2026
DSAStringsLeetCode🏢 Amazon

DSA

Rotate Array

Covers: Brute Force, Extra Array, Optimal (Reverse). Optimal — Time O(n), Space O(1).

Medium·Aug 29, 2026
DSAArraysLeetCode

DSA

Contiguous Array

Covers: Brute Force, Optimal Prefix Sum. Best — Time O(n), Space O(n).

Medium·Aug 25, 2026
DSAArraysLeetCode🏢 Amazon

Low Level Design

Design a Conference Room Booking System

Low-level design of a thread-safe office room booking system featuring Singleton, Facade, Strategy (pluggable room selection), Observer (Email/Calendar/Slack notifications), Builder for recurring bookings, and atomic rollback.

Hard·Aug 21, 2026·20 min read
Low Level DesignOOPDesign Patterns

Low Level Design

Design Splitwise

Low-level design of an expense-sharing app — user and group management, three split strategies (equal, percentage, exact), Factory pattern for entity creation, Singleton orchestration, and a Facade that hides all internal complexity.

Hard·Aug 21, 2026·18 min read
Low Level DesignOOPDesign Patterns

Low Level Design

Design a Library Management System

A full low-level design for a library — rack-based book storage, dual borrow flows (by book ID or copy ID), multi-attribute search, borrow-log tracking, and a thin facade that separates the public API from the core engine.

Medium·Aug 16, 2026·18 min read
Low Level DesignOOPDesign Patterns

Low Level Design

Design a Notification Service

A multi-channel notification broker with per-service subscription control, parallel fan-out via an ExecutorService, exponential-backoff retry, and a Dead Letter Queue — built around Template Method, Strategy, Builder, and Singleton.

Medium·Aug 16, 2026·16 min read
Low Level DesignOOPDesign Patterns

Low Level Design

Design a Pub-Sub Model

Build a Publisher-Subscriber messaging system from scratch — decoupled components, dynamic topic management, and thread-safe broadcast using the Observer pattern and Singleton registry.

Medium·Aug 16, 2026·12 min read
Low Level DesignOOPDesign Patterns

Low Level Design

Design a Tic-Tac-Toe Game

A clean OOP design for the classic two-player grid game — pluggable winning strategies, a Singleton game controller, interface-driven board and game contracts, and a turn-based loop in Java.

Medium·Aug 16, 2026·14 min read
Low Level DesignOOPDesign Patterns

Low Level Design

Design a Logging Framework

A complete low-level design walkthrough for a custom logging framework — from requirements clarification to Singleton, Strategy, and Builder patterns, with async log processing and pluggable appenders in Java.

Easy·Aug 13, 2026·15 min read
Low Level DesignOOPDesign Patterns

Low Level Design

Design an LRU Cache

Build a fixed-capacity cache with O(1) get and put using a HashMap and a doubly linked list, with a pluggable eviction engine that cleanly separates storage from access-order tracking.

Medium·Aug 13, 2026·12 min read
Low Level DesignOOPDesign Patterns

Low Level Design

Design a Task Management System

A complete low-level design walkthrough for a task management system — from requirements to State, Strategy, Builder, and Singleton patterns with thread-safe task lifecycle management in Java.

Easy·Aug 13, 2026·15 min read
Low Level DesignOOPDesign Patterns

Low Level Design

Design a Traffic Signal Controller

A complete low-level design walkthrough for a traffic signal control system — State pattern for signal transitions, Singleton context as the FSM, and sensor-driven adaptive durations with emergency override.

Easy·Aug 11, 2026·12 min read
Low Level DesignOOPDesign Patterns

Low Level Design

Design a Bank Account System

A complete low-level design walkthrough for a bank account system — from requirements clarification to SOLID principles, design patterns, and a clean Java implementation with Singleton service, abstract accounts, and transaction history.

Easy·Aug 11, 2026·15 min read
Low Level DesignOOPDesign Patterns

Low Level Design

Design a Coffee Vending Machine

A complete low-level design walkthrough for a coffee vending machine — Singleton services, Factory for coffee types, synchronized thread safety, and inventory tracking with low-stock alerts.

Easy·Aug 11, 2026·15 min read
Low Level DesignOOPDesign Patterns

Concurrency

Blocking Queue — Producer-Consumer

Implement a thread-safe bounded blocking queue from scratch using ReentrantLock and Condition variables — the canonical producer-consumer concurrency problem.

Aug 10, 2026
ConcurrencyJavaMultithreading

Concurrency

Building H2O — Semaphores + CyclicBarrier

Coordinate hydrogen and oxygen threads so they always form complete H2O molecules — never a stray atom — using two semaphores to enforce stoichiometry and a CyclicBarrier to synchronize the triplet.

Aug 10, 2026
ConcurrencyJavaMultithreading

Concurrency

Dining Philosophers — Deadlock-Free Fork Ordering

Five philosophers, five forks, one circular table — eliminate the circular wait that causes deadlock by acquiring forks in a fixed global index order, never left-before-right.

Aug 10, 2026
ConcurrencyJavaDeadlock

Concurrency

Print FooBar Alternately — Two Approaches

Two threads must alternate printing 'foo' and 'bar' exactly n times each. Compare a synchronized wait/notify approach against a cleaner paired-semaphore solution.

Aug 10, 2026
ConcurrencyJavaMultithreading

Concurrency

Print In Order — CountDownLatch vs wait/notify

Three threads must print 'first', 'second', 'third' in order, regardless of scheduling. Compare CountDownLatch (clean one-shot signaling) against synchronized wait/notify (general state machine).

Aug 10, 2026
ConcurrencyJavaMultithreading

Concurrency

Round Robin Print — N Threads in Order

N threads must print a shared counter in strict round-robin order: thread 0 prints 1, thread 1 prints 2, …, wrapping back to thread 0, until maxCount is reached.

Aug 10, 2026
ConcurrencyJavaMultithreading

Concurrency

Print Zero-Odd-Even — Three-Thread Sequencing

Three threads must interleave to print '0102030405…' — zero before every number, odd and even alternating. Solved with ReentrantLock and three dedicated Condition variables.

Aug 10, 2026
ConcurrencyJavaMultithreading

DSA

Implement Queue using Stacks

Stacks & Queues. Space O(n).

Easy·Aug 8, 2026
DSAStackQueue

DSA

Next Greater Element II

Solution - Monotonic Stack approach. Optimal — Time O(2n), Space O(n).

Medium·Aug 8, 2026
DSAStackQueue🏢 Amazon

DSA

Largest Rectangle in a Histogram

Covers: Brute Force, Using Stack, Optimal. Optimal — Time O(n), Space O(n).

Hard·Aug 8, 2026
DSAStackQueue

DSA

Daily Temperature

Covers: Stack, Deque. Optimal — Time O(n), Space O(n).

Medium·Aug 8, 2026
DSAStackQueue🏢 Amazon

DSA

Online Stock Span

Stacks & Queues problem — solution with code and analysis.

Medium·Aug 8, 2026
DSAStackQueue

DSA

Implement Min Stack

Stacks & Queues problem — solution with code and analysis.

Medium·Aug 8, 2026
DSAStackQueue🏢 Amazon

DSA

Sliding Window Maximum

Covers: Naive, Better. Optimal — Time O(n), Space O(n-k).

Hard·Aug 8, 2026
DSAStackQueue

DSA

Maximum Rectangle in Histogram

Better approach. Optimal — Time O(n), Space O(1).

Hard·Aug 8, 2026
DSAStackQueue

DSA

LFU Cache

Stacks & Queues. Time O(1).

Hard·Aug 8, 2026
DSAStackQueue

DSA

Balanced Parentheses

Stacks & Queues problem — solution with code and analysis.

Easy·Aug 8, 2026
DSAStackQueue

DSA

Next Greater Element I

Solution - Monotonic Stack approach. Optimal — Time O(2n), Space O(n).

Easy·Aug 8, 2026
DSAStackQueue

DSA

Implement Stack using Queues

Stacks & Queues. Space O(n).

Easy·Aug 8, 2026
DSAStackQueue

DSA

Queue Using Array

Stacks & Queues. Space O(n).

Easy·Aug 8, 2026
DSAStackQueue

DSA

Stack Using Array

Stacks & Queues. Space O(n).

Easy·Aug 8, 2026
DSAStackQueue

DSA

Maximum Average Subarray I

Sliding Window - Fixed approach. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSALeetCodePractice

DSA

Longest Substring Without Repeating Characters

5 approaches incl. Brute Force, Better, Optimized Approach: SLiding…, and more. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSASliding WindowTwo Pointers🏢 Amazon

DSA

Longest Subarray of 1's After Deleting One Element

Sliding Window approach. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSALeetCodePractice

DSA

Longest Repeating Character Replacement

Covers: Btute Force, Optimal - Sliding Window. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSASliding WindowTwo Pointers

DSA

Minimum Add to Make Parentheses Valid

Strings. Time O(n), Space O(n).

Medium·Aug 8, 2026
DSAStringsLeetCode

DSA

String to Integer (atoi)

Strings. Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAStringsLeetCode

DSA

Capacity To Ship Packages Within D Days

Binary Search approach. Optimal — Time O(logn), Space O(1).

Medium·Aug 8, 2026
DSALeetCodePractice🏢 Amazon

DSA

Find First and Last Position of Element in Sorted Array

Covers: Brute Force, Binary Search, Binary Search: Single Method. Optimal — Time O(log n), Space O(1).

Medium·Aug 8, 2026
DSALeetCodePractice🏢 Amazon

DSA

Encode and Decode a String

Strings problem — solution with code and analysis.

Medium·Aug 8, 2026
DSAStringsLeetCode

DSA

Decode String

Covers: Two Parallel Stacks, Single Stack of Pairs. Optimal — Time O(n), Space O(n).

Medium·Aug 8, 2026
DSAStringsLeetCode

DSA

Palindrome Number

Covers: Brute Force: Converting to S…, Better. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAStringsLeetCode

DSA

Compare Version Numbers

Covers: Brute Force, Optimal. Optimal — Time O(N + M), Space O(1).

Medium·Aug 8, 2026
DSAStringsLeetCode

DSA

Count And Say

Iterative run-length encoding. Time O(n · 2^n), Space O(2^n).

Medium·Aug 8, 2026
DSAStringsLeetCode🏢 Amazon

DSA

Valid Anagram

Covers: Brute Force, One Hash Map, Two Hashmaps. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAStringsLeetCode

DSA

Longest Common Prefix

5 approaches incl. Horizontal Scanning, Vertical Scanning, Binary Search, and more. Optimal — Time O(s log m), Space O(1).

Easy·Aug 8, 2026
DSAStringsLeetCode

DSA

Reverse Linked List

Covers: Iterative, Recursive. Optimal — Time O(n), Space O(n).

Easy·Aug 8, 2026
DSALinked ListLeetCode

DSA

Roman to Int or vice versa

Covers: Roman to Int, Int to Roman. Optimal — Time O(N), Space O(1).

Easy·Aug 8, 2026
DSAStringsLeetCode

DSA

Longest Palindromic Substring

Covers: Brute Force, Better, Dynamic Programming. Optimal — Time O(n^2), Space O(n^2).

Medium·Aug 8, 2026
DSAStringsLeetCode🏢 Amazon

DSA

Reverse Words in a String

Covers: Stack, Two pointer (in-place reversal). Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAStringsLeetCode🏢 Amazon

DSA

Valid Parentheses

Stacks & Queues. Time O(n), Space O(1).

Easy·Aug 8, 2026
DSALeetCodePractice

DSA

Trapping Rainwater

4 approaches incl. BRUTE FORCE, DP, TWO POINTER, and more.

Hard·Aug 8, 2026
DSAStackQueue

DSA

Evaluate Reverse Polish Notation

Stacks & Queues. Time O(n), Space O(1).

Medium·Aug 8, 2026
DSALeetCodePractice

DSA

Number of NGEs

Solution - 2 Stacks approach. Optimal — Time O(n), Space O(n).

Medium·Aug 8, 2026
DSAStackQueue

DSA

Next Smaller Element

Solution - Monotonic Stack approach. Optimal — Time O(n), Space O(n).

Medium·Aug 8, 2026
DSAStackQueue

DSA

Linked List Cycle

Covers: Hash, Floyd's Cycle Detection: Har…. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSALinked ListLeetCode

DSA

Letter Combinations of a Phone Number

Miscellaneous problem — solution with code and analysis.

Medium·Aug 8, 2026
DSALeetCodePractice

DSA

Insert Delete GetRandom O(1)

Miscellaneous. Time O(1).

Medium·Aug 8, 2026
DSALeetCodePractice

DSA

The Celebrity Problem

Covers: Brute Force, Stack, Two Pointers. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSALeetCodePractice

DSA

Reorder List

Linked List. Time O(n), Space O(1).

Medium·Aug 8, 2026
DSALinked ListLeetCode🏢 Amazon

DSA

Merge k Sorted Lists

Covers: Brute Force, Optimal. Optimal — Time O(N).

Hard·Aug 8, 2026
DSALinked ListLeetCode

DSA

Middle Node

Covers: Solution 1: Find Length, Hare and Tortoise. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSALinked ListLeetCode

DSA

Check if LL is palindrome or not

Covers: Naive, Better. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSALinked ListLeetCode

DSA

Remove Duplicates from Linked List

Covers: Solution 1: Hash set, Solution 2: Two Pointers, Solution 3: Single Pointer. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSALinked ListLeetCode

DSA

Reverse Nodes in k-Group

Linked List. Time O(n), Space O(1).

Hard·Aug 8, 2026
DSALinked ListLeetCode

DSA

Rotate Matrix

Simulation approach — transpose + row-reverse. Time O(n²), Space O(1).

Medium·Aug 8, 2026
DSALeetCodePractice🏢 Amazon

DSA

Find the intersection point of Y LL

Covers: With count nodes, With two pointers. Optimal — Time O(m+n), Space O(1).

Easy·Aug 8, 2026
DSALinked ListLeetCode

DSA

Delete Node in a Linked List O(1)

Data Overwriting approach. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSALinked ListLeetCode

DSA

Add two numbers as LL

Using Dummy Node approach. Optimal — Time O(max(m,n), Space O(max(m,n).

Medium·Aug 8, 2026
DSALinked ListLeetCode🏢 Amazon

DSA

Remove Nth Node From End of List

Covers: Naive, Better.

Medium·Aug 8, 2026
DSALinked ListLeetCode

DSA

Merge Two Sorted Lists

Covers: Using dummy node, Approach2: Recursive Merge. Optimal — Time O(m+n), Space O(m+n).

Easy·Aug 8, 2026
DSALinked ListLeetCode

DSA

3 Sum

Covers: Brute Force, Better, Optimal. Optimal — Time O(nlogn), Space O(t).

Medium·Aug 8, 2026
DSALinked ListArrays🏢 Amazon

DSA

Middle of Linked List

Covers: Brute Force, Better. Optimal — Time O(N), Space O(1).

Easy·Aug 8, 2026
DSALinked ListLeetCode

DSA

Find Kth Rotation

Binary Search. Time O(logn), Space O(1).

Easy·Aug 8, 2026
DSABinary SearchLeetCode

DSA

Sudoku Solver

Covers: Brute Force, Optimized Safe Check. Optimal — Time O(9^(number of empty cells), Space O(m*n).

Hard·Aug 8, 2026
DSABacktrackingRecursion

DSA

Count Number of Nice Subarrays

PrefixSum + Hashmap approach. Optimal — Time O(n), Space O(n).

Medium·Aug 8, 2026
DSASliding WindowTwo Pointers

DSA

Binary Subarrays With Sum

Covers: Prefixsum + Hashmap, Sliding window. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSASliding WindowTwo Pointers

DSA

Word Search II

Trie. Time O(m×k×4^L), Space O(L).

Hard·Aug 8, 2026
DSALeetCodePractice

DSA

Subsets

5 approaches incl. Recursion (Include/Exclude), Recursion (Include/Exclude),…, Backtracking (start-index st…, and more. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSALeetCodePractice🏢 Amazon

DSA

Permutations

4 approaches incl. Backtracking with a `used` a…, Backtracking via in-place sw…, Iterative (insert into every…, and more. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSALeetCodePractice🏢 Amazon

DSA

Permutation in String

Sliding Window - Fixed approach. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSALeetCodePractice

DSA

Rat in a Maze

Recursion & Backtracking. Time O(4^(m*n), Space O(m*n).

Medium·Aug 8, 2026
DSABacktrackingRecursion

DSA

M Coloring Problem

Backtracking approach. Optimal — Time O(m^n), Space O(n).

Medium·Aug 8, 2026
DSABacktrackingRecursion

DSA

Find All Anagrams in a String

Sliding Window - Fixed approach. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSALeetCodePractice

DSA

N Queens

Covers: Rules, Approach - Backtracking, Improved - hashsets. Optimal — Time O(N!), Space O(N<sup>2</sup>).

Hard·Aug 8, 2026
DSABacktrackingRecursion

DSA

Permutations of a String

Recursion & Backtracking. Time O(n! * n), Space O(n! * n).

Medium·Aug 8, 2026
DSABacktrackingRecursion

DSA

Palindrome partitioning

Recursion & Backtracking. Time O(n * 2^n), Space O(n).

Medium·Aug 8, 2026
DSABacktrackingRecursion

DSA

Combination Sum II

Recursion & Backtracking. Time O(2<sup>n</sup>), Space O(n).

Medium·Aug 8, 2026
DSABacktrackingRecursion

DSA

Combination Sum

Covers: Brute Force - Recursion, When to Use Tabulation. Optimal — Time O(2<sup>T</sup>), Space O(T).

Medium·Aug 8, 2026
DSABacktrackingRecursion

DSA

Subset II

Recursion & Backtracking. Time O(2^n), Space O(n * 2^n).

Medium·Aug 8, 2026
DSABacktrackingRecursion

DSA

Spiral Matrix

Simulation approach.

Medium·Aug 8, 2026
DSALeetCodePractice

DSA

Set Matrix Zeros

Covers: Set, Greedy. Optimal — Time O(m*n), Space O(1).

Medium·Aug 8, 2026
DSALeetCodePractice

DSA

Merge Two Sorted Arrays

Covers: Extra Space (Naive), Two Pointers from End (Optim…, Gap Method (Shell Sort idea). Optimal — Space O(m + n).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Largest Subarray with Sum 0

Covers: Brute Force, Optimal. Optimal — Time O(n), Space O(n).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Linear Search

Arrays. Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Longest Consecutive Sequence in an Array

Covers: Brute Force, Better, Optimal. Optimal — Time O(n), Space O(n).

Medium·Aug 8, 2026
DSAArraysLeetCode🏢 Amazon

DSA

Longest subarray with sum K

Covers: Brute Force, Optimal (Only Positives), Optimal Approach (Handling P…. Optimal — Time O(n), Space O(n).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Optimal Approach: Boyer-Moore Voting Algorithm

Boyer-Moore Voting Algorithm approach. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Set Matrix Zeroes

Covers: Brute Force, Optimal. Optimal — Time O(m*n), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Maximum Consecutive Ones

Optimal approach. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Maximum Subarray

Covers: Brute Force, Kadane's Algo. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Merge two sorted arrays without extra space

Optimal approach. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Largest Element

Covers: Sorting, Linear Scan. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Minimum Size Subarray Sum

Covers: Brute Force, Sliding Window. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Missing Number

5 approaches incl. Brute Force, Better, II, and more. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Move Element to end

Arrays problem — solution with code and analysis.

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Move Zeros to End

Covers: Brute Force, Two pointer. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Next Permutation

Covers: Brute Force, Optimal. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026·7 min read
DSAArraysLeetCode🏢 Amazon

Java

Java Streams Workbook

A progressive, hands-on workbook for building stream-writing fluency from scratch. Six levels, basic → advanced — write every exercise from a blank page.

Aug 8, 2026·25 min read
JavaStreamsFunctional Programming

DSA

Count Inversions

Covers: Brute Force, Merge Sort (Optimal).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Pascal's Triangle — Part I

nCr Formula approach. Optimal — Time O(c), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Leaders in an Array

optimal approach. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Search in 2D matrix

Covers: Brute Force, Better, Optimal. Optimal — Time O(log(n * m), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Majority Element (n/2 times)

Covers: Brute Force, Better, Optimal. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Reverse pairs

Covers: Brute Force, Better.

Hard·Aug 8, 2026
DSAArraysLeetCode

DSA

2 Sum

Covers: HashMap, Optimal. Optimal — Time O(nlogn), Space O(n).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

4 Sum

Covers: Brute Force, Better, Optimal. Optimal — Time O(nlogn), Space O(t).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Longest Consecutive Sequence

Covers: sorting Based, Better, Union Find. Optimal — Time O(n), Space O(n).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Largest subarray with 0 sum

Arrays. Time O(n), Space O(n).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Count Number of Subarrays with Given Xor

Covers: Brute Force, Optimal. Optimal — Time O(n), Space O(n).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Product of Array Except Self

Covers: Brute Force, prefix Sum, Prefix Sum - Space Optimizat…. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode🏢 Amazon

DSA

Best time to buy and sell stock

Covers: Brute Force, Optimal. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Check if array is sorted

Arrays. Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Container With Most Water

Covers: brute Force, Two pointer. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode🏢 Amazon

DSA

Contains Duplicate

Covers: Brute Force, Sorting, HashSet. Optimal — Time O(n), Space O(n).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Count subarrays with given sum

Covers: Brute Force, Optimal, Working. Optimal — Time O(n), Space O(n).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Count subarrays with given xor K

Covers: Brute Force, Better. Optimal — Time O(n^2), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Find Minimum in Rotated Sorted Array

Covers: Brute Force, Binary Search. Optimal — Time O(log n), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode🏢 Amazon🏢 Google

DSA

Maximum Subarray Sum

Covers: Brute Force, Optimal. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode🏢 Amazon

DSA

Design Add and Search Words Data Structure

Trie. Space O(m).

Medium·Aug 8, 2026
DSALeetCodePractice

DSA

Counting Bits

Covers: brute Force, Dynamic Programming. Optimal — Time O(n), Space O(n).

Easy·Aug 8, 2026
DSABit ManipulationLeetCode

DSA

Reverse Bits

Covers: Brute Force, Bit Manipulation. Optimal — Time O(1), Space O(1).

Easy·Aug 8, 2026
DSABit ManipulationLeetCode

DSA

Sum of Two Integers

Bit Manipulation. Time O(1), Space O(1).

Medium·Aug 8, 2026
DSABit ManipulationLeetCode

DSA

Single Element in a Sorted Array

Covers: Brute Force - XOR, Better - Binary Search. Optimal — Time O(logn), Space O(1).

Medium·Aug 8, 2026
DSABinary SearchLeetCode🏢 Amazon

DSA

Median of 2 sorted Arrays

Covers: Naive, Two Pointer. Optimal — Time O(n+m), Space O(1).

Hard·Aug 8, 2026
DSABinary SearchLeetCode🏢 Google🏢 Amazon🏢 Microsoft🏢 Meta🏢 Apple

DSA

K-th element of two Arrays

Covers: Naive, Two Pointer. Optimal — Time O(n+m), Space O(1).

Medium·Aug 8, 2026
DSABinary SearchLeetCode

DSA

Allocate Books

Covers: Linear Search, Binary Search. Optimal — Time O(n*logn), Space O(1).

Medium·Aug 8, 2026
DSABinary SearchLeetCode

DSA

Palindrome Pairs

Trie. Time O(n² * k), Space O(n²).

Hard·Aug 8, 2026
DSATrieLeetCode

DSA

Longest Word in Dictionary

Covers: Set, Trie Based. Optimal — Time O(26*L), Space O(nL).

Medium·Aug 8, 2026
DSATrieLeetCode

DSA

Number of 1 Bits

Covers: Shift Right and Count, Brian Kernighan's Algo. Optimal — Time O(t), Space O(1).

Easy·Aug 8, 2026
DSABit ManipulationLeetCode

DSA

Power Set

Covers: Brute Force, Trie. Optimal — Time O(N^2), Space O(n).

Easy·Aug 8, 2026
DSATrieLeetCode

DSA

Count Distinct Substrings

Using Trie approach. Optimal — Time O(n^2), Space O(n^2).

Medium·Aug 8, 2026
DSATrieLeetCode

DSA

Complete String

Trie. Time O(nL), Space O(nL).

Medium·Aug 8, 2026
DSATrieLeetCode

DSA

Implement Trie - II

Trie problem — solution with code and analysis.

Medium·Aug 8, 2026
DSATrieLeetCode

DSA

Implement Trie

Trie problem — solution with code and analysis.

Medium·Aug 8, 2026
DSATrieLeetCode

DSA

Binary Search

Binary Search. Time O(logn), Space O(1).

Easy·Aug 8, 2026
DSABinary SearchLeetCode

DSA

Valid Anagrams

Covers: Brute Force: Sorting, Hash Map, For fixed characters. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAStringsLeetCode

DSA

Palindromic Substring

Covers: Brute Force: generate all su…, Expansion on center, DP. Optimal — Time O(n<sup>2</sup>), Space O(n<sup>2</sup>).

Medium·Aug 8, 2026
DSAStringsLeetCode

DSA

Smallest Difference

Arrays. Time O(nlogn + mlogm), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Range Sum Query

Prefix Sum approach.

Easy·Aug 8, 2026
DSALeetCodePractice

DSA

Remove duplicates from sorted array

Covers: Brute Force, Two Pointer. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Left Rotate Array by K Places

Covers: Brute Force, Segment Reversal. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Left Rotate Array by One

Arrays. Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Rotate matrix by 90 degrees

Covers: Brute Force, optimal. Optimal — Time O(m*n), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Search in Rotated Sorted Array

Covers: Brute Force: Linear Search, Binary Search. Optimal — Time O(log n), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode🏢 Amazon🏢 Google

DSA

Second Largest

Covers: Brute Force, Better, Optimal. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Single number

Covers: Brute Force: hashmap, XOR. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Minimum Window Substring

Covers: Brute Force, Sliding Window. Optimal — Time O(n), Space O(1).

Hard·Aug 8, 2026
DSAStringsLeetCode

DSA

Sort an array of 0's 1's and 2's

Covers: Brute Force: Sorting, Store freq of 0s, 1s and 2s, Dutch National Flag Algo. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Sorted Squared Array

Covers: Brute Force, Optimal. Optimal — Time O(n), Space O(n).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Subarray Sum Equals K

Covers: Brute Force, Prefix Sum, Optimal Single-Pass. Best — Time O(n), Space O(n).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Tournament Winner

Arrays. Time O(n), Space O(n).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Transpose Matrix

Arrays. Time O(h × w), Space O(h × w).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Two Sum

Covers: Brute Force, Better, Optimal. Optimal — Time O(n), Space O(n).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Union of two sorted arrays

Covers: Brute Force: hashset, Optimal. Optimal — Time O(n + m), Space O(n + m).

Medium·Aug 8, 2026
DSAArraysLeetCode

DSA

Validate Subsequence

Covers: Brute Force, Better. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSAArraysLeetCode

DSA

Best Time to Buy and Sell Stock - II

Covers: Recursive, Memoized, Tabulation. Optimal — Time O(2n), Space O(1).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Coin Change

Covers: Memoized Version, Tabulation: 2-D, DP Approach 1D. Optimal — Time O(n*A), Space O(A).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Coin Change II

Covers: Recursive Version, Memoized Version, Tabulation:. Optimal — Time O(n*A), Space O(n*A).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Climbing Stairs

4 approaches incl. A. Recursive, B. Memoized, B. Tabulation, and more. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Cherry Pickup - II

DP approach. Optimal — Time O(R*C*C), Space O(R*C*C).

Hard·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Cherry Pickup - I

DP approach. Optimal — Time O(n^4), Space O(n^4).

Hard·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Best Time to Buy and Sell Stock with transaction fee - VI

Covers: Recursive, Memoized, Tabulation. Optimal — Time O(2n), Space O(1).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Best Time to Buy and Sell Stock with Cooldown - V

Covers: Recursive, Memoized, Tabulation. Optimal — Time O(2n), Space O(1).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Best Time to Buy and Sell Stock - IV

Covers: Recursive, Memoized. Optimal — Time O(kn), Space O(2 * k).

Hard·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Best Time to Buy and Sell Stock - III

Covers: Recursive, Memoized. Optimal — Time O(n), Space O(2 * 3).

Hard·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Count Square Submatrices with All Ones

Covers: Brute Force, Optimal. Optimal — Time O(m * n), Space O(m * n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Best Time to Buy and Sell Stock

Covers: Naive, Better. Optimal — Time O(n), Space O(1).

Easy·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Burst Balloons

Covers: Recursive, Memoized.

Hard·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Egg Dropping Problem

Covers: Recursive, Memoized, Binary Search. Optimal — Time O(e x f x logf), Space O(e x f).

Hard·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Partition Equal Subset Sum

Tabulation approach. Optimal — Time O(n*k), Space O(k).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Minimum Path Sum

4 approaches incl. Recursive, Memoized Version, Tabulation: Space Optimized, and more. Optimal — Time O(m*n), Space O(m*n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Matrix Chain Multiplication

Covers: Recursive, Memoized. Optimal — Time O(n), Space O(n).

Hard·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

0-1 Knapsack

Covers: Recursive, Memoized, Follow up - Return the indic…. Optimal — Time O(n), Space O(n*w).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Longest Common Subsequence

5 approaches incl. Brute Force, Recursive, Memoized DP, and more. Optimal — Time O(m×n), Space O(n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Longest Increasing Subsequence

4 approaches incl. Brute Force, Memoized, DP, and more. Optimal — Time O(n*log n), Space O(n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

House Robber - II

Covers: Recursive, Memoized version, Tabulation version. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP🏢 Amazon

DSA

Minimum Falling Path Sum

Covers: Recursive, Memoized. Optimal — Time O(m*n), Space O(m*n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Minimum Cost to cut the stick

Covers: Recursive, Tabulation. Optimal — Time O(n^2), Space O(n^2).

Hard·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Maximum Sum Increasing Subsequence

Covers: DP, Binary Search. Optimal — Time O(n*log n), Space O(n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Maximal Square

Covers: Brute Force, Better, Building subproblem. Optimal — Time O(m*n), Space O(n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Maximal Rectangle

Dynamic Programming. Time O(m * n), Space O(n).

Hard·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Maximum Length of Bitonic Subsequence

DP approach.

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Longest Palindromic Subsequence

Covers: Recursion, Memoized DP. Optimal — Time O(n^2), Space O(n^2).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Longest common substring

Dynamic Programming. Time O(m*n), Space O(m*n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

House Robber - III

Covers: Recursive, Memoized version. Optimal — Time O(logn), Space O(n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

MAXIMUM PRODUCT SUBARRAY

Covers: Brute Force, Prefix & Suffix Product Trav…, DP. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

House Robber

4 approaches incl. Recursive, Memoized version, Tabulation version, and more. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Frog Jump

4 approaches incl. A. Recursive, B. Recursive, B. Tabulation, and more. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Frog Jump with k distances

Covers: Recursive, Memoized Version, Tabulation version. Optimal — Time O(k*n), Space O(k).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Super Egg Drop

Covers: Memoized, Binary Search. Optimal — Time O(e x f x logf), Space O(e x f).

Hard·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Edit Distance

Covers: Recursive, DP. Optimal — Time O(m*n), Space O(n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Delete Operation for Two Strings

4 approaches incl. Brute Force, Recursive, Memoized DP, and more. Optimal — Time O(m*n), Space O(n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Decode Ways

Covers: Brute Force: Recursion + Bac…, DP Solution: Tabulation, DP Solution: Tabulation - Sp…. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Subsets with sum k

Covers: Recursive, Memoized. Optimal — Time O(n*k), Space O(n*k).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Convert Sorted Array to Binary Search Tree

Divide and Conquer (Pick Mid… approach. Optimal — Time O(n), Space O(log n).

Easy·Aug 8, 2026
DSALeetCodePractice

DSA

Kth Largest in unsorted Array

Covers: Naive, Use Min Heap. Optimal — Time O(nlogk), Space O(1).

Medium·Aug 8, 2026
DSABinary TreeLeetCode

DSA

Distinct Numbers in Window

Covers: Brute Force - Set, Sliding Window + unordered M…, Other Optimization. Optimal — Time O(N), Space O(N).

Medium·Aug 8, 2026
DSABinary TreeLeetCode

DSA

Kth Largest Element in a Stream

Brute Force -> Sorting + Set approach. Optimal — Time O(nlogn), Space O(k).

Easy·Aug 8, 2026
DSABinary TreeLeetCode

DSA

Find Median in Data Stream

4 approaches incl. Naive, Two Heaps, 1. How Do We Maintain the Me…, and more. Optimal — Time O(logn), Space O(n).

Hard·Aug 8, 2026
DSABinary TreeLeetCode

DSA

Flatten Binary Tree to Linked List

Covers: RECURSION, USING STACK, MORRIS MODIFIED.

Medium·Aug 8, 2026
DSABinary TreeLeetCode

DSA

Validate Binary Search Tree

Covers: Inorder Traversal (Strictly…, Iterative Inorder (Stack). Optimal — Time O(n), Space O(h).

Medium·Aug 8, 2026
DSABinary Search TreeBST🏢 Amazon

DSA

Lowest Common Ancestor of a Binary Search Tree

Optimal approach.

Medium·Aug 8, 2026
DSABinary Search TreeBST

DSA

Kth Smallest Element in a BST

Covers: Brute Force, Better, Optimal. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSABinary Search TreeBST

DSA

Delete Node in a BST

Recursive BST Deletion (Inor… approach. Optimal — Time O(h), Space O(h).

Medium·Aug 8, 2026
DSALeetCodePractice🏢 Amazon

DSA

All Nodes Distance K in Binary Tree

Binary Trees. Time O(n), Space O(n).

Medium·Aug 8, 2026
DSABinary TreeLeetCode🏢 Amazon

DSA

Ceil in BST

BST. Space O(1).

Easy·Aug 8, 2026
DSABinary Search TreeBST

DSA

Floor in BST

BST. Space O(1).

Easy·Aug 8, 2026
DSABinary Search TreeBST

DSA

Upper bound

Binary Search. Time O(logn), Space O(1).

Easy·Aug 8, 2026
DSABinary SearchLeetCode

DSA

Search Insert Position

Covers: Brute Force, Binary Search. Optimal — Time O(log n), Space O(1).

Easy·Aug 8, 2026
DSABinary SearchLeetCode🏢 Google

DSA

Search in Rotated Sorted Array - II

Binary Search. Time O(logn), Space O(1).

Medium·Aug 8, 2026
DSABinary SearchLeetCode

DSA

Find Peak Element

Binary Search. Time O(logn), Space O(1).

Medium·Aug 8, 2026
DSABinary SearchLeetCode

DSA

Number of occurrences in Sorted Array

Binary Search. Time O(logn), Space O(1).

Easy·Aug 8, 2026
DSABinary SearchLeetCode

DSA

Implement Lower Bound

Binary Search. Time O(logn), Space O(1).

Easy·Aug 8, 2026
DSABinary SearchLeetCode

DSA

Koko Eating Bananas

Covers: Brute Force, binary Search. Optimal — Time O(logn), Space O(1).

Medium·Aug 8, 2026
DSALeetCodePractice🏢 Amazon🏢 Google

DSA

Binary Tree Zigzag Level Order Traversal

Binary Trees. Time O(n), Space O(n).

Medium·Aug 8, 2026
DSABinary TreeLeetCode

DSA

LRU Cache

Design. Time O(1).

Medium·Aug 8, 2026
DSADesignLeetCode🏢 Amazon

DSA

Design Twitter

Covers: LinkedList + Hashmap, 📌 `getNewsFeed(int userId)`.

Medium·Aug 8, 2026
DSADesignLeetCode

DSA

Serialize and Deserialize Binary Tree

Binary Trees problem — solution with code and analysis.

Hard·Aug 8, 2026
DSABinary TreeLeetCode🏢 Amazon

DSA

Same tree

Covers: Recursive, Iterative. Optimal — Time O(n), Space O(n).

Easy·Aug 8, 2026
DSABinary TreeLeetCode

DSA

Right Side View of Binary Tree

Covers: BFS (Level Order), DFS (Preorder, Right-First), DFS (Postorder, Left-First,…. Optimal — Space O(w).

Medium·Aug 8, 2026
DSALeetCodePractice

DSA

Populate Next Right Pointers in Each Node

Covers: O(1) Space — Level Pointer T…, BFS Level Order. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSALeetCodePractice

DSA

Path Sum II

Covers: DFS + Backtracking (Optimal), DFS with Running Sum (Accumu…, Iterative DFS with Explicit…. Optimal — Space O(n·h).

Medium·Aug 8, 2026
DSALeetCodePractice🏢 Amazon

DSA

Binary Tree Maximum Path Sum

Binary Trees. Time O(n), Space O(h).

Hard·Aug 8, 2026
DSABinary TreeLeetCode🏢 Amazon

DSA

Binary Tree Level Order Traversal

Binary Trees. Time O(n), Space O(n).

Medium·Aug 8, 2026
DSABinary TreeLeetCode

DSA

Missing and Repeating Number

4 approaches incl. Brute Force, Better, Maths, and more. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAIntervalsArrays

DSA

Lowest Common Ancestor of a Binary Tree

10 approaches incl. Recursive, Parent Pointers + Hash Set, Path Compression (Path to Ro…, and more. Optimal — Time O(n), Space O(h).

Medium·Aug 8, 2026
DSABinary TreeLeetCode🏢 Amazon

DSA

Invert Binary Tree

Covers: Recursion, Iterative. Optimal — Time O(n), Space O(n).

Easy·Aug 8, 2026
DSABinary TreeLeetCode

DSA

Maximum Depth of Binary Tree

Covers: Recursive, Iterative. Optimal — Time O(n), Space O(n).

Easy·Aug 8, 2026
DSABinary TreeLeetCode

DSA

Diameter of Binary Tree

Covers: DFS with Height Tracking (Op…, Naive DFS (Two Separate Func…, DFS with Class-Level Variabl…. Optimal — Time O(n²), Space O(h).

Easy·Aug 8, 2026
DSALeetCodePractice

DSA

Construct Binary Tree from Inorder and Postorder Traversal

Binary Trees problem — solution with code and analysis.

Medium·Aug 8, 2026
DSABinary TreeLeetCode

DSA

Construct Binary Tree from Preorder and Inorder Traversal

Binary Trees problem — solution with code and analysis.

Medium·Aug 8, 2026
DSABinary TreeLeetCode

DSA

Subtree of Another Tree

Binary Trees. Time O(n × m), Space O(h).

Easy·Aug 8, 2026
DSABinary TreeLeetCode

DSA

Burning Tree

Binary Trees problem — solution with code and analysis.

Medium·Aug 8, 2026
DSABinary TreeLeetCode

DSA

Number of Ways to Arrive at Destination

Graphs. Time O(m log n), Space O(m+n).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Word Search

DFS - Backtracking approach. Optimal — Time O(mn * 4^L), Space O(1).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Word Ladder

Graphs problem — solution with code and analysis.

Hard·Aug 8, 2026
DSAGraphsBFS

DSA

Valid Tree

Graphs problem — solution with code and analysis.

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Surrounded Regions

Graphs. Time O(V^2).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Shortest Path in Binary Matrix

Graphs. Time O(V^2).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Rotten Oranges

Graphs. Time O(V^2).

Medium·Aug 8, 2026
DSAGraphsBFS🏢 Amazon

DSA

Redundant Connection

Graphs. Time O(V+E).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Path with Minimum Effort

Graphs. Time O(ElogV).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Pacific Atlantic Water Flow

Covers: To Note, DFS, BFS. Optimal — Time O(m x n), Space O(m x n).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Job Sequencing

Covers: Greedy, optimized Greedy with DSU, Dp. Optimal — Time O(nlogn), Space O(m).

Medium·Aug 8, 2026
DSAGreedyLeetCode

DSA

Number of Provinces

DFS vs BFS approach. Optimal — Time O(V^2), Space O(n).

Medium·Aug 8, 2026
DSAGraphsBFS🏢 Amazon

DSA

Number of operations to make network connected

Covers: 1. DFS Based, Disjoint Set Based. Optimal — Time O(m * alpha(n), Space O(n).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Connected Components

Covers: DFS, Union Find. Optimal — Time O(V + E), Space O(V).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Network Delay Time

Graphs — single-source shortest path with Dijkstra. Time O(E log V), Space O(V + E).

Medium·Aug 8, 2026
DSAGraphsDijkstra🏢 Google

DSA

Flood Fill

Graphs. Time O(mxn), Space O(mxn).

Easy·Aug 8, 2026
DSAGraphsBFS

DSA

Find the city with the smallest number of neighbors in a threshold distance

Covers: Dijkstra's Algo, Floyd warshall's. Optimal — Time O(n^3), Space O(n^2).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Find Eventual Safe States

Graphs. Space O(V).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Evaluate Division

Graphs. Time O(Q × (V + E), Space O(V).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Course Schedule - IV

Using DFS approach. Optimal — Time O(Q *(N+P), Space O(N+P).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Find Median from Data Stream

Covers: Brute Force, Follow Ups. Optimal — Space O(1).

Hard·Aug 8, 2026
DSAHeapPriority Queue

DSA

Non-overlapping Intervals

Covers: Greedy, DP. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAIntervalsArrays

DSA

Merge Intervals

Covers: Linear scan, No extra Space. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAIntervalsArrays🏢 Amazon

DSA

Meeting Rooms III

Intervals problem — solution with code and analysis.

Hard·Aug 8, 2026
DSAIntervalsArrays

DSA

Meeting Rooms II

Covers: Sweep line algorithm (or tim…, Min Heap (Priority Queue), Two Sorted Arrays (Two Point…. Optimal — Time O(n log n), Space O(n).

Medium·Aug 8, 2026
DSAIntervalsArrays🏢 Amazon

DSA

Meeting Rooms

Intervals. Time O(N * logN), Space O(N).

Easy·Aug 8, 2026
DSAIntervalsArrays

DSA

Maximum meetings

Greedy approach. Optimal — Time O(N * logN), Space O(N).

Medium·Aug 8, 2026
DSAIntervalsArrays

DSA

Insert Interval

4 approaches incl. Brute Force: Linear Iteratio…, Better: Binary Search, Alternate Approach: O(nlogn), and more. Optimal — Time O(log n), Space O(1).

Medium·Aug 8, 2026
DSAIntervalsArrays

DSA

Top K Frequent Elements

Summmary approach. Optimal — Time O(n log k), Space O(n).

Medium·Aug 8, 2026
DSAHeapPriority Queue🏢 Amazon

DSA

Merge K sorted arrays

Covers: Naive, Using Min heap. Optimal — Time O(nlogk), Space O(k).

Hard·Aug 8, 2026
DSAHeapPriority Queue

DSA

Minimum insertions or deletions to convert string A to B

Tabulation approach. Optimal — Time O(m*n), Space O(m*n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Maximum Sum Combination

Covers: Naive, Better, So the intuition is:. Optimal — Time O(n log n + K log K), Space O(K).

Medium·Aug 8, 2026
DSAHeapPriority Queue

DSA

Kth Largest Element in an Array

Covers: Sort (Naive), Max Heap, Min Heap of Size k (Optimal). Optimal — Time O(n log k), Space O(k).

Medium·Aug 8, 2026
DSAHeapPriority Queue🏢 Amazon

DSA

MinHeap/MaxHeap Implementation

Heaps problem — solution with code and analysis.

Medium·Aug 8, 2026
DSAHeapPriority Queue

DSA

Valid Sudoku

Hashing & Sorting problem — solution with code and analysis.

Medium·Aug 8, 2026
DSAHashingSorting

DSA

Two Sum II - Input Array Is Sorted

Two Pointer approach. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSALeetCodePractice

DSA

Group Anagrams

Covers: Sorting + Hashing, character counts Based key. Optimal — Time O(n * k), Space O(n * k).

Medium·Aug 8, 2026
DSAHashingSorting🏢 Amazon

DSA

Jump Game

Covers: Recursion, Greedy. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAGreedyLeetCode

DSA

Jump Game III

Greedy. Time O(n), Space O(n).

Medium·Aug 8, 2026
DSAGreedyLeetCode

DSA

Jump Game II

Covers: Recursive, DP, Greedy. Optimal — Time O(n), Space O(1).

Medium·Aug 8, 2026
DSAGreedyLeetCode🏢 Amazon

DSA

Unique Paths - II

4 approaches incl. A. Recursive, B. Memoization, B. Tabulation, and more. Optimal — Time O(m * n), Space O(n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Topological sort - BFS

Graphs. Time O(N), Space O(V+E).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Detect Cycle in an directed graph - BFS

Graphs. Time O(N), Space O(V+E).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Detect Cycle in an directed graph - DFS

Graphs. Time O(N), Space O(V+E).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Detect Cycle in an undirected graph - DFS

Graphs. Time O(N), Space O(V+E).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Detect Cycle in an undirected graph - BFS

Graphs. Time O(N), Space O(V+E).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

BFS TRAVERSAL

Graphs. Time O(V+E), Space O(V+E).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

DFS TRAVERSAL

Graphs. Time O(V+E), Space O(V+E).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Word Break

5 approaches incl. Naive: Recursive, Memoization, Tabulation, and more. Optimal — Time O(n^2), Space O(n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Restore IP Addresses

Backtracking approach. Optimal — Time O(27).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Unique Paths

5 approaches incl. A. Recursive, B. Memoization, B. Tabulation, and more. Optimal — Time O(min(m,n), Space O(1).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP🏢 Amazon

DSA

Unique Paths - III

A. DFS approach.

Hard·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Course Schedule - I

Covers: DFS, BFS - TOPOLOGICAL. Optimal — Time O(N+E), Space O(N).

Medium·Aug 8, 2026
DSAGraphsBFS🏢 Amazon🏢 Google

DSA

Knapsack with Duplicate Items

Memoized Version approach. Optimal — Time O(n x W), Space O(n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Subset Sum equal to target

Covers: Recursion, Memoized, Tabulation. Optimal — Time O(n*k), Space O(n*k ).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Shortest common super-sequence

Dynamic Programming. Time O(m*n), Space O(m*n).

Hard·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Russian Doll Envelopes

Covers: Brute Force: O(n²) DP, Solution: O(n log n) Patienc…. Optimal — Time O(n log n), Space O(n).

Hard·Aug 8, 2026
DSALeetCodePractice

DSA

Rod Cutting

Covers: Memoized, tabulation. Optimal — Time O(n x n), Space O(n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Print Longest Increasing Subsequence

DP approach. Optimal — Time O(n*n), Space O(n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Print all longest Common subsequence

Dynamic Programming. Time O(m + n).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Number of Longest Increasing Subsequence

Time O(n^2), Space O(n).

Medium·Aug 8, 2026
DSALeetCodePractice

DSA

Ninja Training

4 approaches incl. A. Recursive, B. Memoization, B. Tabulation, and more. Optimal — Time O(n * 4 * 3), Space O(4).

Medium·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Minimum Insertion Steps to Make a String Palindrome

Covers: Recursion, Memoized DP. Optimal — Time O(n^2), Space O(n).

Hard·Aug 8, 2026
DSADynamic ProgrammingDP

DSA

Clone Graph

Graphs problem — solution with code and analysis.

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Alien Dictionary

Graphs problem — solution with code and analysis.

Hard·Aug 8, 2026
DSAGraphsBFS🏢 Google

DSA

Minimum Spanning Tree: Prim's Algorithm

Graphs. Time O(ElogE), Space O(V^2).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Minimum Spanning Tree: Kruskal's Algorithm

Graphs. Time O(ElogE), Space O(V+E).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Shortest Path: Floyd Warshall Algorithm

Alogrithm approach. Optimal — Time O(V^3 ), Space O(V^2 ).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

All Paths From Source to Target

Graphs. Time O(2^N * N), Space O(2^N * N).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Shortest Path Algorithm - Bellman Ford algorithm

5 approaches incl. Negative weight cycle:, Why (V-1) times?, Detection of a Negative Weig…, and more. Optimal — Time O(V*E), Space O(V).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Cheapest Flights Within K Stops

Graphs problem — solution with code and analysis.

Medium·Aug 8, 2026
DSAGraphsBFS🏢 Amazon

DSA

Shortest Path Algorithm - Dijkstra algorithm

Covers: Data structures Used, If path is needed. Optimal — Time O( (E+V), Space O( |V| ).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Strongly Connected Components - Kosaraju's algorithm

The Algorithm approach. Optimal — Time O(V+E), Space O(V+E).

Hard·Aug 8, 2026
DSAGraphsBFS

DSA

Bipartite Graph - DFS

Covers: Sample 1, Sample 2, Observations. Optimal — Time O(N*(V+E).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Bipartite Graph - BFS

Covers: Sample 1, Sample 2, Observations. Optimal — Time O(N*(V+E).

Medium·Aug 8, 2026
DSAGraphsBFS

DSA

Course Schedule - II

Using BFS - Kahn's Algo approach. Optimal — Time O(N+P), Space O(N+P).

Medium·Aug 8, 2026
DSAGraphsBFS🏢 Google

DSA

Number of Islands

Graphs. Time O(V^2).

Medium·Aug 8, 2026
DSAGraphsBFS🏢 Amazon

DSA

Topological sort - DFS

Graphs. Time O(N), Space O(V+E).

Medium·Aug 8, 2026
DSAGraphsBFS

Low Level Design

Building a Scalable Weather Station

A Practical Look at Pub/Sub Architecture in Java

Easy·Nov 26, 2025
Low Level DesignOOPDesign Patterns

Low Level Design

How to Build a Scalable Music Service

Explore the system design of a music streaming service like Spotify. Learn about positional indexing for playlists, handling concurrency with the Actor model, low-latency playback architecture, and the design patterns that make it scale to millions of users.

Hard·Nov 24, 2025
Low Level DesignOOPDesign Patterns

Low Level Design

Design a Parking Lot

A complete low-level design walkthrough for a multi-level parking lot system — from requirements clarification to class diagrams, design patterns, and thread-safe Java implementation.

Easy·Aug 10, 2025·18 min read
Low Level DesignOOPDesign Patterns