Tag: postfix notation中

在将中缀表达式转换为后缀表达式的同时处理括号

我正在从事一个Java项目,需要我将中缀表达式转换为后缀表达式。 我目前能够将中缀表达式转换为后缀与这个方法,只要他们不包含括号,但我不知道如何处理括号。 基本上,我有两个堆栈,其中包含名为“令牌”的对象。 Token是一个包装类,它包含一个字符串,该字符串可以是一个数字,一个变量(被作为一个数字来计算,在用户输入时被挂起),运算符(运算符有一个与它相关的优先级,以便我的方法可以决定如何处理“+”,“ – ”,“*”和“/”之间的操作顺序)或括号(括号可以确定是左括号还是右括号)。 我应该如何处理括号? 那么多层括号呢? public String toPostFix() { StringBuilder postfixstr = new StringBuilder(); Stack<Token> in_fix = new Stack<>(); Stack<Token> post_fix = new Stack<>(); for (int i = tokens.length – 1; i >= 0; i–) { t = new Token(tokens[i]); in_fix.push(t); } //there are still tokens to process while (!in_fix.empty()) { //is […]