Skip to main content

Revolut Coding Interview Questions

25 Revolut coding interview problems with full optimal solutions — 10 easy, 11 medium, 4 hard. Every problem ships with multiple approaches (brute-force first, then the optimal), complexity tables for each, company-specific tips on what an Revolut interviewer values, and a FAQ section.

  • #1easyfoundational

    1. Two Sum

    Find two indices whose values sum to a target, a Revolut warm-up that mirrors pairing two transaction legs to net a customer balance to zero.

  • #2easyfoundational

    2. Valid Parentheses

    Use a stack to validate matching brackets, a classic Revolut warm-up that mirrors validating nested transaction blocks in a settlement message.

  • #3easyfoundational

    3. Merge Two Sorted Lists

    Merge two ascending linked lists into one, a Revolut warm-up that mirrors merging two time-ordered FX trade streams into a single tape.

  • #4easyfoundational

    4. Same Tree

    Check whether two binary trees are structurally and value-identical, a Revolut warm-up that mirrors comparing two ledger snapshots for reconciliation drift.

  • #5easyfoundational

    5. Single Number

    Find the one element that appears once when every other appears twice, a Revolut warm-up that mirrors spotting an unmatched payment leg in a duplicated batch.

  • #6easyfoundational

    6. Majority Element

    Find the value appearing more than n/2 times, a Revolut warm-up that mirrors detecting the dominant currency in a stream of FX trades.

  • #7easyfoundational

    7. Contains Duplicate

    Decide whether any value appears at least twice in an array, a Revolut warm-up that mirrors detecting a re-submitted transaction ID before the ledger double-books it.

  • #8easyfoundational

    8. Missing Number

    Find the one number missing from a permutation of 0..n, a Revolut warm-up that mirrors finding a gap in a sequence of FX trade IDs.

  • #9easyfoundational

    9. Reverse Linked List

    Reverse a singly linked list iteratively in place, a Revolut warm-up that mirrors replaying a chain of ledger entries in reverse to compute an as-of balance.

  • #10easyfoundational

    10. Best Time to Buy and Sell Stock

    Find the max profit from a single buy-then-sell over a price series, a Revolut warm-up that mirrors picking the single best entry/exit on an intraday FX feed.

  • #11mediumfoundational

    11. Add Two Numbers

    Add two big integers represented as linked lists in reverse order, a Revolut staple that mirrors summing two arbitrary-precision currency amounts limb by limb.

  • #13mediumfoundational

    13. Container With Most Water

    Find two lines forming the maximum-area container via a two-pointer walk, a Revolut screen that mirrors picking the best buy/sell pair in an FX order book.

  • #14mediumfoundational

    14. 3Sum

    Find every unique triple summing to zero, a Revolut screen that mirrors finding three transaction legs that net to zero across a multi-currency clearing batch.

  • #15mediumfoundational

    15. Group Anagrams

    Group strings that are anagrams of each other under a canonical key, a Revolut screen that mirrors bucketing different spellings of the same merchant name for ledger reconciliation.

  • #16mediumfoundational

    16. Spiral Matrix

    Walk a 2D matrix in spiral order with bounded pointers, a Revolut screen that mirrors traversing a partitioned ledger grid row-by-row without revisiting cells.

  • #17mediumfoundational

    17. Merge Intervals

    Merge overlapping intervals after sorting by start, a Revolut staple that mirrors collapsing overlapping authorization holds into a single net exposure window.

  • #18mediumfoundational

    18. Unique Paths

    Count distinct lattice paths from top-left to bottom-right of a grid using DP, a Revolut warmup that mirrors counting valid FX-conversion routes between two currencies through intermediate hubs.

  • #19mediumfoundational

    19. Insert Delete GetRandom O(1)

    Design a set supporting O(1) insert, delete, and random pick, a Revolut systems-design favorite that mirrors picking a random active order from a hot ledger partition.

  • #20mediumfoundational

    20. LRU Cache

    Design an O(1) get and put cache with least-recently-used eviction, a Revolut systems-design staple that mirrors caching the hottest FX rates with strict memory bounds.

  • #21mediumfoundational

    21. Coin Change

    Find the minimum number of coins to make a target amount with unlimited supply, a Revolut staple that mirrors choosing the minimum number of pre-funded liquidity buckets to satisfy a payout.

  • #22hardfoundational

    22. Median of Two Sorted Arrays

    Find the median of two sorted arrays in O(log(min(m,n))), a Revolut hard-screen that mirrors finding the median quote across two sorted FX-rate feeds in microseconds.

  • #23hardfoundational

    23. Merge k Sorted Lists

    Merge k sorted linked lists via a min-heap, a Revolut hard-screen that mirrors fan-in merging of k pre-sorted FX-rate streams into a single ordered tape.

  • #24hardfoundational

    24. Trapping Rain Water

    Compute the total water trapped between bars of varying height, a Revolut hard-screen that mirrors computing total locked-up reserves between peaks in a time-series of balance snapshots.

  • #25hardfoundational

    25. Sliding Window Maximum

    Return the max of every length-k window via a monotonic deque, a Revolut hard-screen that mirrors computing rolling peak FX volatility over a sliding minute window.

Revolut Coding Interview Questions — Full Solutions — InterviewChamp.AI