【数据结构 | C语言】后缀式建二叉树

本文介绍如何使用C语言通过后缀表达式来构建二叉树。提供了原创代码,遵循后缀表达式的建树规则,即遇到操作数直接入栈,遇到运算符出栈两个操作数生成子树并入栈。建议先忽略辅助函数,遇到不理解的部分再查阅详细实现。
摘要由CSDN通过智能技术生成

原创代码,如有错误,欢迎指正。

阅读建议: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' &
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

竹一笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值