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 631–660 of 3276 results
This problem tests array manipulation, prefix sums, and index tracking while handling state changes caused by subarray removal.
ByteDanceSoftware EngineerCoding & AlgorithmsTechnical ScreenThis problem tests your ability to use the two-pointer sliding window technique combined with a frequency map to identify the smallest valid substring efficiently.
ByteDanceSoftware EngineerCoding & AlgorithmsOnsiteGiven an unordered list of auction bids, return the n-th highest one, treating two equal bid amounts as distinct entries, while a heap-based solution is off the table. Tests selection algorithms faster than full sorting, correct handling of duplicate values, and justifying the achieved time complexity.
ByteDanceSoftware EngineerCoding & AlgorithmsOnsiteThis problem tests your ability to implement recursive backtracking algorithms to generate all possible permutations and combinations of a given set of distinct integers.
ByteDanceSite Reliability EngineerCoding & AlgorithmsTechnical ScreenThis question evaluates skill in designing and implementing efficient in-memory caching data structures, testing understanding of LRU eviction, per-entry TTL expiration, and the use of hash maps and linked lists for O(1) operations.
ByteDanceSoftware EngineerCoding & AlgorithmsTechnical ScreenThis question evaluates algorithmic problem-solving and data-structure design, testing sliding-window and 2D submatrix reasoning for maximizing contiguous ones with bounded flips and the design of an LRU cache that enforces O(1) get/put semantics.
ByteDanceSoftware EngineerCoding & AlgorithmsOnsiteThis question evaluates proficiency in array manipulation and fundamental algorithmic techniques—specifically binary search for sorted arrays, digit-wise arithmetic with carry handling, and in-place stable reordering—within the Coding & Algorithms domain and with attention to time and space complexity.
ByteDanceSite Reliability EngineerCoding & AlgorithmsTechnical Screen- Implement an LRU CacheMedium
This problem tests your ability to combine a hash map and a doubly linked list to achieve constant-time performance for cache operations.
ByteDanceSoftware EngineerCoding & AlgorithmsTechnical Screen This set of problems evaluates skills in string processing, memory simulation and allocation logic, and online data-structure maintenance for dynamic contiguous segment counting, testing algorithmic design and attention to stateful invariants.
ByteDanceData ScientistCoding & AlgorithmsOnline AssessmentA four-part ByteDance Data Scientist onsite coding question: implement an O(1) MinStack, a MaxStack with peekMax/popMax, a streaming median finder, and a binary-tree upward (node-to-ancestor) path-sum check. It tests data-structure augmentation, streaming order statistics, and prefix-sum tree reasoning.
ByteDanceData ScientistCoding & AlgorithmsOnsiteThis problem tests graph theory knowledge, specifically topological sorting using Kahn's algorithm or DFS, applied to dependency resolution between characters.
ByteDanceSoftware EngineerCoding & AlgorithmsTechnical ScreenIntersect two sorted lists of disjoint closed intervals in linear time, retaining one-point endpoint overlaps and advancing whichever current interval ends first.
ByteDanceSoftware EngineerCoding & AlgorithmsTechnical ScreenThis problem tests the ability to design an O(1) time complexity cache that evicts the least frequently used items, using recency as a tie-breaker.
ByteDanceSoftware EngineerCoding & AlgorithmsOnsiteGiven the current hourly catch of each fishing pond and a budget of K hours, where every hour fished at a pond lowers its catch by one, compute the maximum total number of fish. It tests modeling the declining yields, choosing an optimal schedule, and meeting a time bound better than O(K log N) when K is very large.
ByteDanceMachine Learning EngineerCoding & AlgorithmsTechnical ScreenThis Coding & Algorithms question for a Data Engineer role evaluates dynamic programming and sequence-optimization skills by requiring selection of a subsequence under a pairwise adjacency constraint on video durations, at a moderate-to-advanced algorithmic abstraction level.
ByteDanceData EngineerCoding & AlgorithmsTechnical ScreenThis problem tests your ability to manipulate sorted data structures and manage interval boundaries to optimize overlapping segments in linear or log-linear time.
ByteDanceSoftware EngineerCoding & AlgorithmsTechnical ScreenMerge unsorted half-open time windows into sorted, non-overlapping intervals while leaving merely adjacent windows separate. Handle duplicate and nested ranges, large timestamps, large input, and empty collections under exact boundary semantics.
ByteDanceSoftware EngineerCoding & AlgorithmsTechnical ScreenCoding problem: given closed integer intervals in any order, merge every group of overlapping or touching intervals and return the disjoint result sorted by start. It tests interval reasoning, correct handling of shared endpoints, duplicates and nested intervals, and a well-defined output order.
ByteDanceSoftware EngineerCoding & AlgorithmsOnsiteThis problem tests your ability to manipulate tree node values to satisfy a global constraint using a bottom-up dynamic programming or greedy approach.
ByteDanceSoftware EngineerCoding & AlgorithmsTechnical ScreenGiven meetings as half-open start and end time intervals, compute the minimum number of rooms needed so that no room ever hosts two overlapping meetings. Tests interval reasoning, correct handling of back-to-back meetings that share an endpoint, and an efficient approach for up to 100,000 meetings.
ByteDanceMachine Learning EngineerCoding & AlgorithmsTechnical ScreenGiven named tasks and before-and-after dependency pairs, return an order that satisfies every dependency, choosing the alphabetically smallest valid order, or an empty list when the dependencies contain a cycle. It tests topological sorting, cycle detection and deterministic tie-breaking.
ByteDanceSoftware EngineerCoding & AlgorithmsOnsiteThis question evaluates a candidate's competency in combinatorial search, constraint reasoning, and algorithmic design for arranging non-attacking pieces on a grid.
ByteDanceSite Reliability EngineerCoding & AlgorithmsTechnical ScreenSolve a coding interview problem about the probability that one fair die beats another when the dice may have different sizes and duplicate face values. The challenge emphasizes strict tie handling and an efficient approach that avoids comparing every possible pair of faces.
ByteDanceData ScientistCoding & AlgorithmsTechnical ScreenThis problem tests your ability to use a monotonic stack combined with frequency tracking to construct a specific subsequence while maintaining lexicographical order.
ByteDanceSoftware EngineerCoding & AlgorithmsTechnical ScreenCoding problem: replay an n-by-n tic-tac-toe game from a list of moves and report after every move whether the player who just moved has filled a row, a column or either diagonal. It tests efficient win detection on large boards and careful handling of diagonal and anti-diagonal cells.
ByteDanceSoftware EngineerCoding & AlgorithmsOnsiteImplement a frequency-based selection over a large integer array: return the most common value, using the numerically smallest value to break ties. Preserve the input and return the value itself rather than its count or position.
ByteDanceSoftware EngineerCoding & AlgorithmsTechnical ScreenThis problem tests your ability to manipulate linked list pointers by reversing sub-segments of a list while maintaining structural integrity.
ByteDanceSoftware EngineerCoding & AlgorithmsTechnical ScreenThis problem tests your ability to manipulate pointers in a linked list structure and manage iterative or recursive state transitions for fixed-size segments.
ByteDanceMachine Learning EngineerCoding & AlgorithmsTechnical ScreenNumbers arrive one at a time from a stream; after each arrival, return the median of everything received so far, averaging the two middle values when the count is even. The problem tests keeping order statistics up to date efficiently as a data stream grows.
ByteDanceSoftware EngineerCoding & AlgorithmsOnsiteThis problem tests your ability to adapt Breadth-First Search (BFS) to a state-space graph where the state includes both spatial coordinates and a remaining resource constraint.
ByteDanceSoftware EngineerCoding & AlgorithmsTechnical Screen