![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
realzhangsan
这个作者很懒,什么都没留下…
展开
-
Java 利用栈计算后序表达式
Java 利用栈计算后序表达式 假设输入的后序表达式以空格作为分隔符 思路 创建一个栈用来存储操作数 顺序读取表达式输入 遇到操作数就压入栈 遇到 + - * / 时,弹出两个操作数,弹出的第一个操作数是右操作数,第二个是左操作数,用两个操作数进行相应的运算,将运算结果压入栈 最终栈中剩下的那个数就是计算结果 代码 import java.util.Scanner; import java.util.Stack; public class EvaluatePostfix { public st原创 2022-01-17 18:35:19 · 384 阅读 · 0 评论 -
Java Stack实现括号匹配
Java Stack实现括号匹配 思路 用一个栈暂存左括号 顺序读取表达式 遇到左括号,入栈 遇到右括号,从栈中弹出一个左括号,如果栈中没有左括号,或者有左括号但左右括号不匹配,则整个表达式括号不匹配 如果表达式中所有的右括号都和对应的左括号匹配,且栈中没有多余的左括号,说明整个表达式括号匹配 代码 /** * author: realzhangsan */ public static boolean doesMatch() { Stack<String> a = new Stack原创 2022-01-16 19:00:56 · 369 阅读 · 0 评论 -
Java 未省略括号的中序表达式转后序表达式
Java 未省略括号的中序表达式转后序表达式 思路: 用一个栈暂存操作符,一个空白字符串str在读取中序的过程中拼接成后序表达式 顺序读取中序表达式 遇到左括号,不执行任何操作 遇到操作数,拼接在str之后 遇到右括号,从栈中弹出一个操作符拼接在str之后 实现: public static String infixToPostfix() { Stack<String> stack = new Stack<>(); String tmp = ""; Sca原创 2022-01-16 13:17:53 · 175 阅读 · 0 评论