C语言如何将字符串转换成算式
答案:2 悬赏:60 手机版
解决时间 2021-03-11 18:33
- 提问者网友:眉目添风霜
- 2021-03-11 03:08
C语言如何将字符串转换成算式
最佳答案
- 五星知识达人网友:玩家
- 2021-03-11 04:23
利用栈可以把中序算式变换成后序算式,然后再将转换后的存入二叉树中,对节点里的数字字符串做类型转换,再对树进行递归计算,这基本就差不多了吧。
根据已知算式优先级的运算表达式求运算结果可以基于数据栈和运算符栈来实现,这部分到不是难点,算法例子也很多,LZ可以上网搜一下;这个问题的难点应该在判断任意字符串元素的算式优先级上,这部分就需要用到词法分析了,构建一个有限自动机和操作符优先级表来帮助区分是数字还是运算符,以及运算符的优先级等等
根据已知算式优先级的运算表达式求运算结果可以基于数据栈和运算符栈来实现,这部分到不是难点,算法例子也很多,LZ可以上网搜一下;这个问题的难点应该在判断任意字符串元素的算式优先级上,这部分就需要用到词法分析了,构建一个有限自动机和操作符优先级表来帮助区分是数字还是运算符,以及运算符的优先级等等
全部回答
- 1楼网友:话散在刀尖上
- 2021-03-11 05:56
很简单的
#include
int main()
{
char temp[20]={0};
long a=
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯