原创代码,如有错误,欢迎指正。
阅读建议:Tree.c部分提供了基本函数,由于不是本文主要内容,因此将其单独放在一个文件里面。读者可以跳过此部分,当不理解某个函数时,再回到Tree.c查阅即可
后缀式建二叉树规则:
遍历后缀式,如果是操作数,直接入栈。如果是运算,出栈两个操作数结合生成小树,并将其入栈。后缀式建树相较中缀式简单
postExpTree.c:
post:后 Exp:表达式 Tree:树
# include "Tree.c"
pnode postExpTree(char cc[]) {
// 建表达式栈
pstack pexp = CreateStack();
char c;
for (int i=0; i<MAX_SIZE; i++) {
c = cc[i];
if (c=='\0') { // 结束
break;
}
pnode new = CreateNode();
new->data = c;
if (!(c>='a' &