Catalano.Math
Class PolishExpression
- java.lang.Object
-
- Catalano.Math.PolishExpression
-
public class PolishExpression extends java.lang.ObjectPolish Expression. Is a mathematical notation in which operators precede their operands, in contrast to the more common infix notation. Original implementation: http://andreinc.net/2010/10/05/converting-infix-to-rpn-shunting-yard-algorithm/
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description static classPolishExpression.AssociativitySpecifies the associativity.
-
Constructor Summary
Constructors Constructor and Description PolishExpression()Initializes a new instance of the PolishExpression class.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidAddOperator(java.lang.String symbol, int precedence, PolishExpression.Associativity associativity)Add a operator into polish expression.doubleEvaluate(java.lang.String rpn)Evaluate the RPN expression.doubleEvaluate(java.lang.String[] rpnTokens)Evaluate the RPN expression.java.lang.StringtoReversePolishNotation(java.lang.String infixNotation)Convert Infix notation to RPN.java.lang.String[]toReversePolishNotation(java.lang.String[] inputTokens)Convert Infix notation to RPN.
-
-
-
Constructor Detail
-
PolishExpression
public PolishExpression()
Initializes a new instance of the PolishExpression class.
-
-
Method Detail
-
AddOperator
public void AddOperator(java.lang.String symbol, int precedence, PolishExpression.Associativity associativity)Add a operator into polish expression.- Parameters:
symbol- Symbol.precedence- Precedence.associativity- Associativity.
-
Evaluate
public double Evaluate(java.lang.String rpn)
Evaluate the RPN expression.- Parameters:
rpn- RPN expression.- Returns:
- The result from the expression.
-
Evaluate
public double Evaluate(java.lang.String[] rpnTokens)
Evaluate the RPN expression.- Parameters:
rpnTokens- RPN tokens.- Returns:
- The result from the expression.
-
toReversePolishNotation
public java.lang.String toReversePolishNotation(java.lang.String infixNotation)
Convert Infix notation to RPN.- Parameters:
infixNotation- Infix notation.- Returns:
- RPN.
-
toReversePolishNotation
public java.lang.String[] toReversePolishNotation(java.lang.String[] inputTokens)
Convert Infix notation to RPN.- Parameters:
inputTokens- Infix tokens.- Returns:
- RPN.
-
-
DataMelt 3.0 © DataMelt by jWork.ORG