Algorithms

86 articles to help you prepare for your next interview.

Airbnb Search, Pricing, and Trust Infrastructure
2026-03-23
Airbnb's engineering challenges sit at the intersection of marketplace dynamics, real-time personalization, and global trust at scale.
API Design Interview Guide 2026: REST, GraphQL, gRPC,...
2026-03-23
API design is one of the most underprepared topics in system design interviews. Candidates spend weeks on database sharding and message queues.
Google DeepMind Interview Guide 2026: Research...
2026-03-23
Google DeepMind is not a product engineering organization that happens to do AI research.
Job Search After a Layoff: A Practical Engineering Guide
2026-03-23
Getting laid off is disorienting in a way that is hard to describe until it happens to you.
A* Search Algorithm: Pathfinding for Interviews
2026-03-21
A is the gold standard for pathfinding in interviews. It combines Dijkstra's optimality with heuristic-guided search to find shortest paths faster.
Bloom Filters & Probabilistic Data Structures for Interviews
2026-03-21
Understand Bloom filters, counting filters, and probabilistic data structures—when to trade accuracy for space efficiency.
Elastic Interview Guide 2026: Search, Observability &...
2026-03-21
Master the Elastic interview process with deep Elasticsearch knowledge, observability platforms, and building distributed search systems at scale.
Network Flow Algorithms: Max Flow to Bipartite Matching
2026-03-21
Complete guide to network flow interview problems—Ford-Fulkerson, Edmonds-Karp, and real applications like bipartite matching.
Raleigh-Durham Tech Job Market Guide: Research...
2026-03-21
Navigate the Research Triangle's booming tech scene. From SAS and Red Hat to startups and Apple expanding.
Skip Lists: Concurrent Data Structures for Interviews
2026-03-21
Master skip lists—the probabilistic alternative to balanced trees with excellent concurrent access properties.
Bit Manipulation XOR Tricks, Bitmasking, and Common Patterns
2026-03-20
Bit manipulation interview problems — XOR properties, bit counting, bitmask DP, power-of-two tricks, and the patterns appearing at Google, Meta, and Amazon.
Data Structures Interview Cheatsheet: Complexity, Use...
2026-03-20
Complete reference for data structure interview questions — time/space complexity for all major structures, when to use each, tradeoffs.
Data Structure Design Patterns: When to Use What in...
2026-03-20
A practical framework for choosing the right data structure in coding interviews — hash maps, heaps, tries, segment trees.
Implementing Data Structures from Scratch: Interview Edition
2026-03-20
How to implement core data structures for technical interviews — linked list, stack, queue, binary tree, hash map, min-heap — with clean code.
Dynamic Programming: Interval DP, Digit DP, and Bitmask...
2026-03-20
Go beyond basic dynamic programming — interval DP, digit DP, bitmask DP, and the optimization techniques that distinguish senior engineers in coding interviews.
Graph Algorithm DFS, BFS, and Advanced Graph Problems
2026-03-20
Complete guide to graph algorithm interview questions — DFS, BFS, topological sort, shortest paths, union-find.
Graph Algorithms BFS, DFS, Dijkstra, and Topological Sort
2026-03-20
Complete guide to graph algorithms for coding interviews — BFS, DFS, shortest paths, cycle detection, topological sort, union-find, and when to use each.
Amortized Complexity Analysis: Interview Concept Most...
2026-03-20
Master amortized analysis — aggregate method, accounting method, potential method — through dynamic arrays, stacks with multi-pop.
Backtracking Advanced: N-Queens, Sudoku, and Word Search...
2026-03-20
Advanced backtracking for technical interviews — N-Queens, Sudoku solver, word search, regular expression matching, generate valid parentheses, subsets.
Binary Search Advanced: Beyond Sorted Arrays
2026-03-20
Advanced binary search patterns for technical interviews — search in rotated sorted array, find minimum in rotated array, search a 2D matrix.
Binary Tree Interview Problems: LCA, Path Sum, and...
2026-03-20
Master the hardest binary tree interview problems with a pattern-based approach. Covers lowest common ancestor variants, path sum problems.
Bit Manipulation for Interviews: XOR Tricks, Bit DP, and...
2026-03-20
Master advanced bit manipulation techniques: XOR-based algorithms, bitmask DP, counting set bits efficiently.
Bit Manipulation XOR Tricks, Bit Counting, and Common...
2026-03-20
A practical guide to bit manipulation for software engineering interviews — covering the core operations, XOR properties, counting bits.
Bit Manipulation Tricks for Coding Interviews
2026-03-20
Essential bit manipulation patterns for interviews — XOR tricks, power of two checks, counting set bits, bit masking.
Combinations, Permutations, and Subsets: Interview...
2026-03-20
Master the backtracking framework for generating combinations, permutations, and subsets.
Complexity Analysis: Beyond Big-O for Senior Engineer...
2026-03-20
Deep complexity analysis for senior interviews — amortized analysis, space-time tradeoffs, best/worst/average case distinctions, recurrence relations.
Combinatorics in Coding Interviews: Counting Problems...
2026-03-20
A practical guide to combinatorics in interviews — binomial coefficients, stars and bars, inclusion-exclusion, Catalan numbers, Pascal's triangle.
Data Stream Problems: Median, Running Stats, and...
2026-03-20
Interview patterns for data streams — finding median from a data stream with two heaps, running mean/variance, reservoir sampling for random sampling.
Data Structures Interview Review: Arrays, Trees, Graphs,...
2026-03-20
A complete interview review of data structures — time and space complexity, implementation details.
Design Custom Data Structures: Interview Problems and...
2026-03-20
How to design custom data structures in coding interviews — median finder, LFU cache, stack with min, iterator design, random set.
Divide and Conquer: Patterns Beyond Merge Sort and...
2026-03-20
Advanced divide and conquer patterns for coding interviews — closest pair of points, count inversions, median of two sorted arrays.
Bitmask Dynamic Programming: TSP, Set Cover, Assignment...
2026-03-20
Master bitmask DP for technical interviews: traveling salesman problem, minimum set cover, optimal assignment, subset enumeration.
Interval DP: Dynamic Programming Pattern for Range Problems
2026-03-20
Master interval dynamic programming for technical interviews — matrix chain multiplication, burst balloons, minimum cost to cut a stick.
Dynamic Programming on Trees: Interview Patterns
2026-03-20
Tree DP patterns for coding interviews — rerooting technique, diameter, maximum path sum, subtree counting.
Dynamic Programming on Strings: LCS, Edit Distance, and...
2026-03-20
Master the most common string DP patterns in coding interviews — from LCS and edit distance to palindromes, interleaving strings, and regex matching.
Dynamic Arrays and Amortized Analysis: Interview Deep Dive
2026-03-20
Master dynamic arrays for technical interviews — amortized O(1) append, resizing strategies, ArrayList vs LinkedList tradeoffs.
Dynamic Programming Pattern Recognition: Complete Framework
2026-03-20
A systematic approach to recognizing and solving DP problems in interviews — the 5 DP categories, state design, transition formulation.
Fast/Slow Pointer Technique: Cycle Detection, Middle of...
2026-03-20
Master the fast/slow pointer (Floyd's tortoise and hare) technique — detect cycles in linked lists, find cycle start, find the middle node, happy number.
Graph Algorithms: Interview Patterns for Senior Engineers
2026-03-20
Advanced graph problems for senior-level interviews — strongly connected components (Tarjan's, Kosaraju's), articulation points, bridges.
Graph Algorithms: Dijkstra, Bellman-Ford,...
2026-03-20
A rigorous guide to advanced graph algorithms for software engineering interviews — covering shortest path algorithms, their trade-offs, network flow.
Minimum Spanning Tree: Kruskal, Prim, and Interview...
2026-03-20
MST algorithms for coding interviews — Kruskal's with Union-Find, Prim's with priority queue, when to use each.
Graph Shortest Path Algorithms: The Complete Interview Guide
2026-03-20
Master Dijkstra's algorithm, Bellman-Ford, Floyd-Warshall, BFS for unweighted graphs, and an intro to A* — with interview patterns and when to use each.
Greedy Algorithms for Interviews: Interval Scheduling,...
2026-03-20
Go beyond basic greedy with interval scheduling maximization, Huffman coding, fractional knapsack, activity selection.
Greedy Algorithms: Interview Patterns and When They Work
2026-03-20
Master greedy algorithms for technical interviews — when greedy is optimal, proof techniques, activity selection, interval scheduling, Huffman coding.
Hash Maps Advanced: Interview Patterns and Internal...
2026-03-20
Deep dive into hash maps for technical interviews — collision resolution, load factor, hash function design, open addressing vs chaining.
Interval Problems: The Complete Interview Playbook
2026-03-20
All interval problem patterns for coding interviews — merge intervals, insert interval, meeting rooms, minimum platforms.
Kadane's Algorithm and Its Variants: Maximum Subarray...
2026-03-20
A thorough guide to Kadane's algorithm — the linear-time maximum subarray solution — and its essential variants: circular array, maximum product subarray.
Linked List Interview Patterns: Floyd's Cycle, Merge,...
2026-03-20
Master the advanced linked list patterns that consistently appear in FAANG and top-tier engineering interviews, including cycle detection.
Longest Common Subsequence and Its Variants: A Interview...
2026-03-20
Master LCS and its family of problems — edit distance, shortest common supersequence, LCS of three strings, space-optimized variants.
LRU Cache: Implementation, Variants, and Interview Patterns
2026-03-20
LRU cache implementation with doubly linked list and hash map, LFU cache, cache eviction policies comparison, and the system design patterns caches enable.
Matrix and 2D Grid Interview Problems: BFS, DFS, Dynamic...
2026-03-20
A systematic guide to solving matrix and 2D grid problems in interviews, covering BFS/DFS traversal patterns, island counting, shortest paths.
2D Matrix Problems: Rotation, Spiral Order, and Graph...
2026-03-20
Master the essential 2D matrix patterns for coding interviews: in-place rotation, spiral traversal, word search, island counting, and matrix BFS/DFS.
Merge Sort Beyond Sorting: Inversions, External Sort, K...
2026-03-20
Advanced merge sort applications for coding interviews — counting inversions, external sort for large datasets, merge K sorted lists.
Monotonic Stack: Interview Pattern That Unlocks Hard...
2026-03-20
Master monotonic stacks and queues for technical interviews — next greater element, stock span, largest rectangle in histogram, sliding window maximum.
Network Flow Algorithms: Max Flow, Min Cut, and...
2026-03-20
Network flow for senior engineering interviews — Ford-Fulkerson and Edmonds-Karp max flow, the max-flow min-cut theorem, bipartite matching as flow.
Parsing and Expression Problems: Calculator, Tokenizer,...
2026-03-20
How to solve expression parsing problems in coding interviews — implement a calculator with parentheses, tokenize mathematical expressions.
Prefix Sum: The Most Underused Interview Technique
2026-03-20
How prefix sums solve range queries, subarray problems, and 2D grid problems in O(1) per query — including difference arrays, 2D prefix sums.
Probability and Expected Value in Coding Interviews
2026-03-20
How to approach probability, expected value, random algorithms, Monte Carlo simulations, and randomized data structures in technical interviews.
Range Queries: Segment Trees, BIT, and Sparse Tables
2026-03-20
Range query data structures for senior coding interviews — segment tree with lazy propagation, Binary Indexed Tree (Fenwick tree), sparse table for RMQ.
Mastering Recursion in Interviews: Permutations,...
2026-03-20
A systematic guide to recursion problems in technical interviews — covering backtracking templates for permutations and subsets.
Recursion Patterns for Coding Interviews: Beyond the Basics
2026-03-20
Advanced recursion patterns for interviews — memoization vs tabulation, tree recursion, mutual recursion, tail recursion.
Segment Trees: Range Query Problems in Technical Interviews
2026-03-20
Master segment trees for technical interviews — range sum queries, range minimum/maximum, lazy propagation, when to use segment trees vs BIT.
Sliding Window Patterns: Variable Window, Character...
2026-03-20
Deep-dive into sliding window interview problems — fixed window, variable window with shrinkable right/left pointers, character frequency maps.
Mastering Sliding Window Patterns: Fixed, Variable,...
2026-03-20
Complete guide to all sliding window algorithm variants for interviews: fixed-size windows, variable-size windows, minimum/maximum window problems.
Sorting Algorithms in Interviews: QuickSort, MergeSort,...
2026-03-20
A practical guide to sorting algorithms for software engineering interviews — complexity analysis, implementation pitfalls.
Advanced Stack Patterns: Monotonic Stack and Beyond
2026-03-20
Stack patterns for senior coding interviews — monotonic stack for next greater element, largest rectangle in histogram, daily temperatures.
Stack and Queue Interview Patterns: Monotonic Stack,...
2026-03-20
Go beyond basic stack and queue mechanics to master the advanced patterns — monotonic stacks, sliding window deques, and priority queue strategies.
Advanced String Algorithms: KMP, Rabin-Karp, and Z-Algorithm
2026-03-20
String matching algorithms for advanced coding interviews — KMP failure function, Rabin-Karp rolling hash, Z-algorithm.
String Interview Problems: KMP, Rabin-Karp, and Sliding...
2026-03-20
Master advanced string algorithms for technical interviews — the KMP pattern matching algorithm, Rabin-Karp rolling hash.
Top-K and K-th Element Problems: Heaps, QuickSelect, and...
2026-03-20
Master the three main approaches to Top-K and K-th element interview problems — heap-based selection, QuickSelect for O(n) average.
Topological Sort for Coding Interviews: Kahn's...
2026-03-20
Complete guide to topological sort — Kahn's BFS algorithm, DFS-based approach, cycle detection, and how to solve Course Schedule I & II, alien dictionary.
Tree Traversal Patterns: Iterative, Morris, and Applications
2026-03-20
Beyond recursive traversals — iterative DFS with explicit stack, Morris traversal for O(1) space, level-order variations.
Binary Trees Advanced: Interview Patterns Beyond the Basics
2026-03-20
Advanced binary tree interview patterns — lowest common ancestor, serialize/deserialize, path sum variants, BST operations.
Trie Patterns Beyond the Basics: Auto-Complete, XOR...
2026-03-20
Go beyond basic trie implementation — learn auto-complete with ranking, Word Search II with pruning, prefix sum trees.
Two Heaps Pattern: Median and Beyond
2026-03-20
The two heaps pattern for coding interviews — finding median from a data stream, sliding window median, finding the optimal meeting point.
Two-Pointer Patterns: 3Sum, Container Water, Trapping...
2026-03-20
Go beyond the basic two-pointer pattern with in-depth coverage of the classic hard problems: 3Sum with duplicate handling, Container With Most Water.
Union-Find (Disjoint Set Union): Complete Interview Guide
2026-03-20
Master the Union-Find data structure for coding interviews — path compression, union by rank, connected components, cycle detection.
Strategy for LeetCode Hard Problems: When to Attempt...
2026-03-20
How to approach hard LeetCode problems — which categories of hards actually appear in interviews, time/effort tradeoff.
Monotonic Stack Next Greater Element, Histograms, and...
2026-03-20
Master monotonic stacks for coding interviews — next greater/smaller element, largest rectangle in histogram, daily temperatures, and stock span problems.
Monotonic Stack and Deque: Interview Patterns and...
2026-03-20
How to recognize and solve monotonic stack and deque problems in technical interviews — next greater element, sliding window maximum, largest rectangle.
Segment Tree Range Queries, Lazy Propagation, and When...
2026-03-20
Master segment trees for coding interviews — range sum, range min/max, lazy propagation, and the classic problems where segment trees are the right tool.
Advanced SQL Window Functions, CTEs, and Query Optimization
2026-03-20
Master advanced SQL for interviews — window functions, recursive CTEs, execution plans, index strategies, EXPLAIN ANALYZE.
String Algorithm Pattern Matching, Sliding Window, and...
2026-03-20
Complete guide to string algorithm interview questions — KMP, Rabin-Karp, two-pointer string problems, anagram detection, longest common prefix.
Tree Algorithm DFS, BFS, and Common Tree Problem Patterns
2026-03-20
Complete guide to tree algorithm interview questions — inorder/preorder/postorder traversal, LCA, BST operations, balanced trees.
Two Pointers and Sliding Window: Interview Pattern Mastery
2026-03-20
Complete guide to two-pointer and sliding window interview patterns — when to use each variant, the template code.
Data Structures & Algorithms Cheat Sheet: Time...
2026-03-19
The definitive DSA reference for technical interviews — Big O complexity tables, when to use each data structure, and patterns mapping to real coding problems.