Search⌘ K
AI Features

Solution: Sort Colors

Explore the two pointer technique to sort an array of colors represented by 0s, 1s, and 2s without extra space. Learn to organize the array in a single pass by swapping elements intelligently, improving efficiency with time complexity of O(n) and space complexity of O(1). This lesson helps you implement the Dutch National Flag algorithm, enabling you to solve similar sorting problems efficiently.

Statement

Given an array, colors, which contains a combination of the following three elements:

  • 0 (Representing red)

  • 1 (Representing white)

  • 2 (Representing blue)

Sort the array in place so that the elements of the same color are adjacent, and the final order is: red (0), then white (1), and then blue (2).

Note: You are not allowed to use any built-in sorting functions. The goal is to solve this efficiently without extra space.

Constraints:

  • nn ==== colors.length

  • 11 \leq ...