java.lang.Object
g0201_0300.s0241_different_ways_to_add_parentheses.Solution

public class Solution extends java.lang.Object
241 - Different Ways to Add Parentheses.

Medium

Given a string expression of numbers and operators, return all possible results from computing all the different possible ways to group numbers and operators. You may return the answer in any order.

Example 1:

Input: expression = “2-1-1”

Output: [0,2]

Explanation: ((2-1)-1) = 0 (2-(1-1)) = 2

Example 2:

Input: expression = “2*3-4*5”

Output: [-34,-14,-10,-10,10]

Explanation:

 (2*(3-(4*5))) = -34
 ((2*3)-(4*5)) = -14
 ((2*(3-4))*5) = -10
 (2*((3-4)*5)) = -10
 (((2*3)-4)*5) = 10 

Constraints:

  • 1 <= expression.length <= 20
  • expression consists of digits and the operator '+', '-', and '*'.
  • All the integer values in the input expression are in the range [0, 99].
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    java.util.List<java.lang.Integer>
    diffWaysToCompute(java.lang.String expression)
     

    Methods inherited from class java.lang.Object

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

    • Solution

      public Solution()
  • Method Details

    • diffWaysToCompute

      public java.util.List<java.lang.Integer> diffWaysToCompute(java.lang.String expression)