Search⌘ K
AI Features

Solution: Remove Duplicate Letters

Explore how to remove duplicate letters from a string to form the smallest lexicographical sequence by applying a stack-based greedy algorithm. Learn to track character frequency, manage a stack and visited set, and optimize the solution with O(n) time complexity. This lesson helps you understand core stack operations and apply them to solve lex order and unique character problems efficiently.

Statement

You are given a string, s, consisting only of lowercase English letters. Your task is to remove duplicate letters so that:

  1. Each letter appears only once in the resulting string.

  2. The resulting string is the smallest in lexicographical order among all possible results that satisfy the above condition.

Return the final string.

A string, a, is considered lexicographically smaller than string b if:

  • In the first position where they differ, the character in a appears earlier in the alphabet than in b.

  • If a is a ...