算术表达式的转换——算术表达树

Think:
1知识感悟:算术表达式的转换可以思考通过后缀表达式建树,然后分别进行前序遍历,中序遍历,后序遍历即可得到前缀表达式,中缀表达式,后缀表达式

SDUT题目链接
建议参考博客

算术表达式的转换
Time Limit: 1000MS Memory Limit: 65536KB

Problem Description
小明在学习了数据结构之后,突然想起了以前没有解决的算术表达式转化成后缀式的问题,今天他想解决一下。
因为有了数据结构的基础小明很快就解出了这个问题,但是他突然想到怎么求出算术表达式的前缀式和中缀式呢?小明很困惑。聪明的你帮他解决吧。

Input
输入一算术表达式,以\’#\’字符作为结束标志。(数据保证无空格,只有一组输入)

Output
输出该表达式转换所得到的前缀式 中缀式 后缀式。分三行输出,顺序是前缀式 中缀式 后缀式。

Example Input
a*b+(c-d/e)*f#

Example Output
+ab-c/def
a*b+c-d/e*f
ab*cde/-f*+

Hint

Author

以下为Accepted代码

#include 

using namespace std;

struct node {
    char s;
    struct node *l;
    struct node *r;
};

char sa[104], sb[104], sc[104];

int

你可能感兴趣的:(知识体系,数据结构-二叉树,算术表达树)