Topic
Coding & Algorithms interview questions
3276 Coding & Algorithms questions from 366 companies, with hints, runnable code and solution walkthroughs.
273 easy2539 medium464 hard
Coding & Algorithms interview questions by the numbers
Last updated
Katkat has 3,276 Coding & Algorithms interview questions from 366 companies; the most come from Amazon (7%), Meta (7%) and Google (6%). By difficulty: 8% easy, 78% medium and 14% hard. The most common round is Technical Screen (52%). Frequent concepts include Algorithms, Data Structures, Arrays and Greedy.
Companies (366)
Difficulty
- Easy8% · 273
- Medium78% · 2539
- Hard14% · 464
Interview rounds
- Technical Screen52% · 1706
- Onsite33% · 1080
- Online Assessment13% · 427
- HR Screen1% · 37
- Other1% · 26
Roles
- Software Engineer80% · 2629
- Machine Learning Engineer8% · 253
- Data Scientist7% · 241
- Data Engineer1% · 45
- Backend Engineer1% · 26
Frequent concepts
- Algorithms9% · 302
- Data Structures7% · 228
- Arrays5% · 176
- Greedy5% · 164
- Optimization5% · 151
- Hash Map4% · 124
Most mentioned in interview experiences
- 1.Solve Algorithmic Challenges in Online Coding Assessments15 reports
- 2.Solve LeetCode string and list problems11 reports
- 3.Solve sliding-window and heap problems8 reports
- 4.Implement LRU cache with O(1) ops7 reports
- 5.Implement and Analyze an LRU Query Cache6 reports
- 6.Determine Length of Longest Unique Substring5 reports
- 7.Match-3 Grid: Find Horizontal and Vertical Runs, Then Clear and Drop Cells5 reports
- 8.Design a single- and multi-threaded web crawler4 reports
- 9.Find an Exit in a URL Maze4 reports
- 10.Find deployable slots in a recurring week from allowed and freeze windows4 reports
Counted from 781 candidate interview experiences on Katkat. How we collect and count
Showing 1141–1170 of 3276 results
Tests modeling geometric proximity as a graph problem, using Disjoint Set Union or graph traversal to identify connected components while ensuring exact integer arithmetic and handling duplicate coordinates.
GoogleSoftware EngineerCoding & AlgorithmsTechnical ScreenPractice counting binary-grid components when diagonal neighbors connect, changing the usual four-direction island definition.
GoogleFrontend EngineerCoding & AlgorithmsOnsiteTests graph traversal, bitmask dynamic programming or backtracking with pruning, and prefix counting on small labeled graphs.
GoogleSoftware EngineerCoding & AlgorithmsTechnical ScreenImplement an algorithm to compute cell-by-cell coverage counts for an n x n grid given multiple inclusive rectangular regions.
GoogleSoftware EngineerCoding & AlgorithmsOnsiteCount the paths across an n by m grid from the bottom-left to the bottom-right cell when each move goes up-right, right or down-right, optionally passing through checkpoints in a required order, modulo a large prime. It tests column-by-column dynamic programming and reducing memory use.
GoogleSoftware EngineerCoding & AlgorithmsOnsiteCount super-streak segments in a time-ordered event stream with an O(n) scan. The solution explains maximal segment boundaries, inclusive gap handling, duration and count checks, edge cases, streaming behavior, and changing-threshold follow-ups.
GoogleData ScientistCoding & AlgorithmsTechnical ScreenThis question evaluates a candidate's ability to parse and process large-scale event logs, perform sessionization based on time gaps, handle out-of-order records and memory constraints, and reason about time and space complexity and optimization strategies in the Coding & Algorithms domain.
GoogleSoftware EngineerCoding & AlgorithmsOnsiteDecide string transform with directional tokens and walls evaluates algorithm design, data structures, correctness, complexity, edge cases, and implementation details in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
GoogleSoftware EngineerCoding & AlgorithmsTechnical ScreenThis question tests the ability to handle nested structures using recursion or a stack-based approach to expand string patterns based on repetition factors.
GoogleSoftware EngineerCoding & AlgorithmsOnsiteTests directed graph modeling, cycle detection, and Kahn's algorithm using a min-heap to produce a lexicographically smallest topological sort.
GoogleSoftware EngineerCoding & AlgorithmsOnsiteThis question evaluates a candidate's ability to design and implement a game engine, manage board state and turn logic, validate moves, and apply efficient data structures and algorithms for win detection within the Coding & Algorithms domain.
GoogleSoftware EngineerCoding & AlgorithmsTechnical ScreenDesign an in-memory message logger that records timestamped messages and queries the top-K most frequent messages within any given time range.
GoogleSoftware EngineerCoding & AlgorithmsTechnical ScreenThis question tests the ability to design an efficient data structure for time-series aggregation using a sliding window approach with O(1) time complexity per operation.
GoogleSoftware EngineerCoding & AlgorithmsTechnical ScreenThis problem tests your ability to design a memory-efficient data structure for sparse or repetitive vector data and implement an arithmetic operation without fully decompressing the representation.
GoogleSoftware EngineerCoding & AlgorithmsOnsiteThis question evaluates understanding of scalable resource-allocation and matching systems, encompassing data-structure and index design, availability tracking, fragmentation minimization, concurrency control, and failure handling for large node pools.
GoogleSoftware EngineerCoding & AlgorithmsTechnical ScreenThis question evaluates skill in designing a composite data structure that supports average O(1) insertion, deletion, and uniform random access, and tests understanding of hashing, indexing, randomness, and concurrency control.
GoogleSoftware EngineerCoding & AlgorithmsTechnical ScreenThis problem tests your ability to design a dynamic data structure that maintains elements while efficiently querying the k-th largest value, necessitating a balance between insertion speed and retrieval performance.
GoogleSoftware EngineerCoding & AlgorithmsOnsiteDetermine which players in a competition have a uniquely determined ranking given a set of pairwise match outcomes.
GoogleSoftware EngineerCoding & AlgorithmsOnsiteThis question evaluates understanding of hierarchical relationship modeling, transitive inference across relations, and dynamic data-structure design for tracking manager and peer links.
GoogleSoftware EngineerCoding & AlgorithmsTechnical ScreenThis problem tests the ability to implement a depth-first search (DFS) with backtracking to find a specific sequence within a grid, while managing state to avoid reusing the same path.
GoogleSoftware EngineerCoding & AlgorithmsOnsiteThis interview question evaluates algorithm design, data structures, correctness, complexity, edge cases, and implementation details in a realistic interview setting. A strong answer for Determine validity after digit-constrained deletions states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.
GoogleSoftware EngineerCoding & AlgorithmsOnsiteThis problem tests your ability to determine connectivity between two nodes in a directed graph, specifically modeling ancestry relationships.
GoogleSoftware EngineerCoding & AlgorithmsTechnical ScreenThis problem tests your ability to model a combinatorial game using the Sprague-Grundy theorem and memoization to determine the winner of a state-dependent stack-merging process.
GoogleSoftware EngineerCoding & AlgorithmsTechnical ScreenThis question tests the ability to implement Kahn's algorithm for topological sorting while using a min-priority queue to satisfy specific tie-breaking requirements.
GoogleSoftware EngineerCoding & AlgorithmsOnsiteDetermine the earliest timestamp at which all nodes in a network become part of a single connected component using a chronological sequence of edge additions.
GoogleSoftware EngineerCoding & AlgorithmsOnsiteA Google coding problem asking you to evaluate a small Lisp-like expression language with integer literals, variables, and add, mult and let forms. It tests tokenizing and parsing nested expressions, lexical scoping in which inner bindings shadow outer ones, and sequential rebinding inside a let.
GoogleSoftware EngineerCoding & AlgorithmsOtherImplement a template engine that recursively resolves variable placeholders using a key-value dictionary while handling circular dependencies, missing keys, and escaped characters.
GoogleSoftware EngineerCoding & AlgorithmsTechnical ScreenDesign an algorithm to rate-limit and deduplicate a stream of robot status messages so identical messages only display if strictly more than ten seconds have elapsed since their last displayed occurrence.
GoogleSoftware EngineerCoding & AlgorithmsTechnical ScreenFind the minimum security clearance needed to travel between two nodes in a graph where edges exceeding a given latency threshold cannot be used.
GoogleSoftware EngineerCoding & AlgorithmsTechnical ScreenTests your ability to process and merge multiple sets of time intervals to find mutually available time windows within a given working day.
GoogleSoftware EngineerCoding & AlgorithmsOnsite