C++二叉树应用:计算表达式

2020-01-06 12:37:25刘景俊

  }

  }

  int calc::result(node *t)

  {

  int num1,num2;

  if (t->type == DATA) return t->data;

  num1=result(t->lchild);

  num2=result(t->rchild);

  switch(t->type)

  {

  case ADD:t->data=num1+num2;break;

  case SUB:t->data=num1-num2;break;

  case MULTI: t->data=num1*num2;break;

  case DIV:t->data=num1/num2;break;

  }

  return t->data;

  }