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

Free to read · better with Enzo

Practice this out loud with Enzo

Enzo runs it as a mock interview, pushes back with follow-ups, and grades you on the rubric.

Next question