返回主页
学习人数: 463
stroke-dashoffset="*2.6389" stroke-linecap="round" transform="rotate(-90 50 50)"/>
正确率: 100%
未通过

(15分)请设计一个算法,将给定的表达式树(二叉树)转换为等价的中缀表达式(通过括号反映操作符的计算次序)并输出。例如,当下列两棵表达式树作为算法输入时:

输出的中缀表达式分别为 (a+b)∗(c∗(−d)) 和 (a∗b)+(−(c−d)) 。

二叉树结点的定义如下:

typedef struct node{ 
    char data[10];   // 存储操作数或操作符
    struct node *left, *right;     
}BTree;

要求:

⑴ 给出算法的基本设计思想。(5分)

⑵ 根据设计思想,采用C或C++语言描述算法,关键之处给出注释。(10分)

回答区域