Cyclic sort

Asked atGoogle
1Give yourself 5 minutes
2Answer out loud, not in your head
3Then compare with the answer below
0
Stuck? Show a way to structure it+
  1. 01State the contract and the key invariant for Cyclic sort
  2. 02Map x to index x - 1
  3. 03Swap until the current value is in its target index
  4. 04Use the settled layout to identify missing or duplicate values
  5. 05Validate the result against boundary cases and state O(n) time and O(1) extra space

Reference answer

Then expect these follow-ups

  • Which invariant proves the Cyclic sort approach is correct?

    Tests: correctness reasoning

  • What edge case would you test first?

    Tests: follow-up reasoning

Hiring now

Google has 52 open roles right now

landed applies to roles like these for you, on each company’s own site, with answers written for the role.

Get 5x interviews10 free auto-applies. No card.
  • Small Business Field Sales Representative

    Denver, Colorado

  • Senior Technical Program Manager, Special Projects

    Denver, Colorado; Lakewood, Colorado, United States

  • OSP Engineering Lead, Technical Operations

    Denver, Colorado

Or practice this question first

Next question