java.lang.Object
g0301_0400.s0301_remove_invalid_parentheses.Solution

public class Solution extends java.lang.Object
301 - Remove Invalid Parentheses.

Hard

Given a string s that contains parentheses and letters, remove the minimum number of invalid parentheses to make the input string valid.

Return all the possible results. You may return the answer in any order.

Example 1:

Input: s = “()())()”

Output: [“(())()”,“()()()”]

Example 2:

Input: s = “(a)())()”

Output: [“(a())()”,“(a)()()”]

Example 3:

Input: s = “)(”

Output: [""]

Constraints:

  • 1 <= s.length <= 25
  • s consists of lowercase English letters and parentheses '(' and ')'.
  • There will be at most 20 parentheses in s.
  • Constructor Summary Link icon

    Constructors
    Constructor
    Description
     
  • Method Summary Link icon

    Modifier and Type
    Method
    Description
    java.util.List<java.lang.String>
    removeInvalidParentheses(java.lang.String s)
     

    Methods inherited from class java.lang.Object Link icon

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details Link icon

    • Solution Link icon

      public Solution()
  • Method Details Link icon

    • removeInvalidParentheses Link icon

      public java.util.List<java.lang.String> removeInvalidParentheses(java.lang.String s)