社区
数据结构与算法
帖子详情
表达式的树分解问题。
flyingxfxf
2004-06-13 10:35:32
要求输入任意表达式,得到这个表达式的树分解。
比如输入:1+1*3
可以分解为:
+
1 *
1 3
先定义运算符有 (),+,-,*,/
数字只有为整数。
程序语言用C,
希望和大家讨论下。 也请高手赐教。。
有部分程序希望可以贴出来,要是分不够再加也可以。
...全文
155
8
打赏
收藏
表达式的树分解问题。
要求输入任意表达式,得到这个表达式的树分解。 比如输入:1+1*3 可以分解为: + 1 * 1 3 先定义运算符有 (),+,-,*,/ 数字只有为整数。 程序语言用C, 希望和大家讨论下。 也请高手赐教。。 有部分程序希望可以贴出来,要是分不够再加也可以。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
programfanny
2004-06-15
打赏
举报
回复
not for mark
flyingxfxf
2004-06-14
打赏
举报
回复
在google上搜索到一篇文章:
上 http://www.cstc.net.cn/docs/docs.php?id=203
中 http://www.cstc.net.cn/docs/docs.php?id=208
下 http://www.cstc.net.cn/docs/docs.php?id=209
有兴趣的朋友可以看一下。
flyingxfxf
2004-06-14
打赏
举报
回复
可以提供部分代码么?
我只看了编译的书,没做过什么有关程序。
提供代码的朋友,我可以再开帖子给分。
mmmcd
2004-06-14
打赏
举报
回复
去年编译原理作业的一个子集
LeeMaRS
2004-06-13
打赏
举报
回复
前面有点错误,改成这样
(a+b)-(c-d)-(e/f)
2 3
LeeMaRS
2004-06-13
打赏
举报
回复
每次找出优先级最低,最靠右的运算符,然后递归分解。
举个例子,(a+b)-(c-d)-(e/f)
1 2 3
先找出3,分解成
-
(a+b)-(c-d) (e/f)
1
左边找出1,再分解
-
(a+b) (c-d)
1 2
左边去括号,找出1,再分解
+
a b
右边去括号,找出2,再分解
-
c d
将(e/f)去括号,分解
/
e f
得到的就是
-
- /
+ - e f
a b c d
整个过程是一个递归处理的过程。
HashCodeWithJava
2004-06-13
打赏
举报
回复
有两种比较好的办法.
1.堆栈,把它转换为后缀表达式.不过涉及到堆栈和运算符号的优先级别的处理,我认为写起来还麻烦一些.在清华大学出的数据结构教材上有详细的讲解和源代码.
2.编译原理的语法分析办法.
由于表达式十分简单,那么直接可以用递归下降的算法实现,只需要把因式分解成几个处理函数就可以了,用C语言函数本身的递归就可以实现,代码写出来相对清晰,简单.不过唯一的不好就是可能理解有点麻烦(对于没有学过编译原理的人来说).在<<编译原理及实践>>书上有详细的讲解和源代码.
源代码我帮你找找,两个我都有.找到以后再贴给你.
flyingxfxf
2004-06-13
打赏
举报
回复
谢谢两为仁兄的帮助, 看来我学的还不太扎实啊,看来要好好的复习下了。
通过
分解
限制的一般
树
级幅度
在本文中,我们提出了一种通过使用因式
分解
极限来计算不包含多项式的常规
树
幅度来绕过此
问题
的方法。 更明确地说,我们迭代构造一个
表达式
,该
表达式
为所有物理极点生成正确的
分解
极限,并且不包含其他极点,则它...
循环马里奥世界-一环QCD的颜色
分解
我们提出了一种新的颜色
分解
,用于一环级的QCD振幅,作为
树
级的Del Duca-Dixon-Maltoni和Johansson-Ochirov
分解
的推广。 从平面原始振幅的最小基础开始,我们写下了颜色
分解
,该
分解
在出现的原始振幅或颜色因子之间...
带你学会使用正则
表达式
内容简介: 正则
表达式
,又称正规表示法、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE)。计算机科学的一个概念。正则
表达式
使用单个字符串来描述、匹配一系列符合某个句法规则的字符串...
SpringMVC全套JAR包
SpringMVC全套JAR包 spring-aop 面向切面JAR, spring-ams ASM字节码库,spring-context,spring-core,spring-expression 基本
表达式
,类相关
表达式
,集合相关
表达式
,其他
表达式
(单词
分解
,词法分析 ,生成语法
树
)
计算数_将简单的加减乘除括号公式解析成
树
的结构.zip
使计算数_将简单的加减乘除括号公式解析成
树
的结构,用python解析简单的加减乘除括号
表达式
成计算
树
,并以左值计算打印
数据结构与算法
33,007
社区成员
35,326
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章