计算机考研 408 数据结构 中缀转后缀

方法1

将中缀表达式画括号,然后将符号移到对应括号外,去掉所有括号

如:a/b+(c*d-e*f)/g

  • ((a/b) + (((c*d) - (e*f))/g))
  • ab/cd*ef*-g/+

方法2

将中缀表达式转换为后缀表达式的算法思想如下:

初始化一个 操作符栈,从左向右开始扫描中缀表达式;

  • 遇到数字时,加入后缀表达式;
  • 遇到运算符时:
    • 若为 (,入栈;
    • 若为 ),则依次把栈中的运算符加入后缀表达式中,直到出现 (,从栈中删除 (;
    • 若为除括号外的其他运算符
      • 当其 优先级 高于栈顶运算符时,直接入栈;
      • 否则从栈顶开始,依次弹出 优先级 高于或等于当前运算符的运算符,直到遇到 优先级 更低的运算符或左括号为止。
相关推荐
xys_6786 小时前
深挖数据结构:树和二叉树(上)
数据结构·算法
BeiGuTing_code6 小时前
Java动态数组(一)
java·数据结构·windows
Interview Aid1127 小时前
Google SWE Intern VO 面经:两轮 Coding,Follow-up 考察 BFS 状态
算法
琳达爱分享7 小时前
从单机令牌桶到集群限流:一次配额超发的复盘
后端·算法
range7 小时前
带TTL的LRU缓存的实现-字节手撕-26/10/19
算法
糖果豆豆7 小时前
n log n 到底从哪来?排序下界、2-SAT 与 3-SAT、停机问题,卡的是同一件事
算法·架构
地平线开发者7 小时前
【玩转 征程6 算法工具链:PTQ 工具篇】hb_verifier
算法·自动驾驶
171320330计算机毕设编程7 小时前
计算机毕业设计 基于springboot+vue的在线观鸟视频播放网站 LW PPT
java·大数据·vue.js·spring boot·算法·课程设计
himobrinehacken8 小时前
位运算揭秘:左右移与符号位陷阱
c语言·c++·算法·安全
INGNIGHT8 小时前
815 · 课程表IV(dfs)
算法·深度优先