Search⌘ K
AI Features

Solution: Remove Invalid Parentheses

Explore how to apply backtracking to remove invalid parentheses by recursively generating all valid strings with minimal removals. Understand the process of counting unmatched parentheses and explore recursive choices for keeping or discarding characters. This lesson helps you solve complex validity problems with balanced parentheses using a structured algorithmic approach.

Statement

You are given a string, s, that contains:

  • Lowercase English letters

  • Opening '(' and closing ')' parentheses

A string is considered valid if:

  1. All opening parentheses '(' are closed properly by a matching ')'.

  2. The parentheses are in the correct order and nesting.

  3. Letters can appear anywhere and do not affect validity.

Return all possible valid strings that can be formed by removing the minimum number of invalid parentheses. The answer must be a list of unique strings, in any order.

Constraints:

  • 1 ...