数据结构——中缀表达式转后缀表达式、中缀转前缀表达式

一、中缀转后缀
1、从左往右扫描中缀表达式,如果是数字,写入结果表达式,如果是操作数,需要进一步判断
2、(1)如果是左括号’(’,直接入栈
(2)如果是运算符,(‘+’、‘-’、‘*’、‘/’),先判断栈顶的操作数的优先级,如果是左括号直接入栈,若如果是运算符,运算符优先级小于或等于栈顶运算符,将栈顶的运算符出栈,并将该运算符入栈
(3)如果是右括号,将栈中运算符依次出栈,括号不用写入结果表达式
(4)表达式扫描完了后,将栈中操作数依次出栈,并写入结果表达式就可以了。

下面是天勤数据结构视频中的一道例题:
在这里插入图片描述
二、中缀转前缀
步骤与前面基本一致,不过是从后往前扫描,中缀转前缀:当前读取运算符优先级小于栈顶则出栈;中缀转前缀:当前读取运算符优先级小于或等于栈顶运算符优先级则出栈

附图:
在这里插入图片描述

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值