/*
烟台大学 计算机与控制工程学院
文件名称:用二叉树求代数表达式
作 者:胡德杰
完成日期:2017年11月30号
版 本 号:v1.1.34
*/
#include <stdio.h>
#include <string.h>
#include <malloc.h>
#include "btree.h"
//用s[i]到s[j]之间的字符串,构造二叉树的表示形式
BTNode *CRTree(char s[],int i,int j)
{
BTNode *p;
int k,plus=0,posi;
if (i==j) //i和j相同,意味着只有一个字符,构造的是一个叶子节点
{
p=(BTNode *)malloc(sizeof(BTNode)); //分配存储空间
p->data=s[i]; //值为s[i]
p->lchild=NULL;
p->rchild=NULL;
return p;
}
//以下为i!=j的情况
for (k=i; k<=j; k++)
if (s[k]=='+' || s[k]=='-')
{
plus++;
posi=k; //最后一个+或-的位置
}
if (plus==0) //没有+或-的情况(因为若有+、-,前面必会执行plus++)
for (k=i
第十周项目二 用二叉树求解代数表达式
最新推荐文章于 2023-10-29 11:52:18 发布
本文总结了如何运用二叉树来解决代数表达式的问题,探讨了二叉树在数学计算中的应用。
摘要由CSDN通过智能技术生成