Hello,本篇博客Val主要来给大家分享一下栈的一个用途:逆波兰表达式求值。
逆波兰表达式也叫后缀表达式,先操作数,后操作符。
栈 后进先出 ,顺序遍历波兰表达式,遇到操作数的时候入栈 , 遇到操作符,先让操作数出栈运算操作数,然后再把运算结果入栈,所有的算式都可以用逆波兰表达式写出来。
把算式12*(3+4)-6+8/2+2用逆波兰表达式写出来,就是 12 3 4 + * 6 - 8 2 / +2 +
逆波兰表达式也叫后缀表达式,有的题目会给你一个算术表达式,求出它的后缀表达式。
如图:逆波兰表达式的操作数入栈运算方式、遇到操作符进行运算后将结果压入栈
#pragma once
#include <iostream>
#include <stack>
#include <assert.h>